搜索测试

  又到了....并不激动人心的搜索测试时间。

  今天和以前还是有一点不一样的,新高二的学长们也参加了(也就是说我们又要被吊打了)

  话不多说,看题:

  fz:填一个5*5的质数方阵,要求每行,每列,两个对角线上的数从左往右连起来都是质数,且每个质数都没有前导零,且每个质数的每位相加之和是一个给定的数,且左上角的数字给定,输出左右方案,没有就输出NONE。

  是一个看起来非常可做,实际上非常不可做的题目,我写了1.5h之后样例竟然还要跑15s,是的你没有看错,就是十五秒,于是我弃疗了。我的思路是,首先制作一个合法的质数表,搜出第一行,再根据第一行(也就是每一列已经有了第一个数)来搜出五个竖列,第一行和第一列的数字都不能带0,之后每搜一个就判一判合法性。听起来已经挺优化的了,然而光荣爆零。最高分也只有40分,还是一个高二的学长写的。std是一个5kb的pascal文件,完全没有去读他的欲望,于是这个题就先咕咕咕了,贴一份我的0分代码吧。 

  

 # include <cstdio>
# include <iostream>
# define R register int using namespace std; const int maxn=;
bool pri[];
int ans=,cnt,s,beg,firs,t[],P[maxn]; int div (int x)
{
int S=;
while (x)
{
S+=x%;
x/=;
}
return S;
} int sw (int x,int i)
{
if(i==) return x/;
if(i==) return x/%;
if(i==) return x/%;
if(i==) return x/%;
return x%;
} void print()
{
for (R i=;i<=;++i)
{
for (R j=;j<=;++j)
printf("%d",sw(t[j],i));
printf("\n");
}
printf("\n");
} bool check()
{
int a=;
for (R i=;i<=;++i)
{
a=;
for (R j=;j<=;++j)
a=a*+sw(t[j],i);
if(pri[a]==false) return false;
}
a=;
for (R i=;i<=;++i)
a=a*+sw(t[i],i);
if(pri[a]==false) return false;
a=;
for (R i=;i<=;++i)
a=a*+sw(t[i],-i+);
if(pri[a]==false) return false;
return true;
} void dfs (int x)
{
int a,f;
if(x==)
{
if(check()) ans++,print();
return ;
}
if(x==)
{
for (R i=;i<=cnt;++i)
{
if(P[i]/!=sw(P[i],x)) continue;
if(sw(P[i],)==||sw(P[i],)==||sw(P[i],)==||sw(P[i],)==||sw(P[i],)==) continue;
t[]=P[i];
dfs();
}
}
else
{
for (R i=;i<=cnt;++i)
{
if(P[i]/!=sw(firs,x)) continue;
t[x]=P[i];
f=;
for (R j=;j<=;++j)
{
a=;
for (R k=;k<=x;++k)
a+=sw(t[k],j);
if(a>s) f=;
}
if(f) continue;
dfs(x+);
}
}
} int main()
{
freopen("fz.in","r",stdin);
freopen("fz.out","w",stdout); scanf("%d%d",&s,&beg);
for (R i=;i<=maxn;++i)
{
if(pri[i]) continue;
for (R j=;j*i<=maxn;++j)
pri[i*j]=true;
}
for (R i=;i<=;++i)
pri[i]=false;
for (R i=;i<=;++i)
{
pri[i]^=;
if(pri[i]&&div(i)!=s) pri[i]=false;
}
for (R i=;i<=;++i)
if(pri[i]) P[++cnt]=i;
for (R i=;i<=cnt;++i)
{
if(P[i]/!=beg) continue;
if(sw(P[i],)==||sw(P[i],)==||sw(P[i],)==||sw(P[i],)==||sw(P[i],)==) continue;
firs=P[i];
dfs();
}
if(ans==) printf("NONE");
fclose(stdin);
fclose(stdout);
return ;
}

fz

  

  gift:很像背包,但是数据范围极大只能搜索的背包题,似乎要用$meet$ $in$ $the$ $middle$来做,但是爆搜可以得到$70$.

  square:poj上一个挺经典的题目,就是问一些火柴棍删掉多少条才能破坏所有的正方形。不知道为什么大家都没有写这个题,咕咕咕?

  

loli的搜索测试-我真不知道是第多少次了的更多相关文章

  1. loli的搜索测试-4

    其实这已经是第四次搜索测试了...只不过上两次测试时我不在学校,扔两个链接吧: 测试-2:https://www.luogu.org/blog/user35178/loli-di-sou-suo-ce ...

  2. loli的搜索测试-5

    今天早上听说不放假感觉很sad,又听说要考试感觉更sad了,早读的时候Juan_feng表示即使考也不会考虫食算,结果上午并没有考试,就自己做了几道题.不得不说做题的决定实在是太明智了,做NOIP历年 ...

  3. web功能测试之表单、搜索测试

    初入职场接触功能测试老是碰到以下情况不知道怎么写测试用例: 一个界面很多搜索条件怎么写用例?下拉框测试如何考虑测试点?上传要考虑哪些验证点?...... 所以这篇主要是整理关于web测试之表单.搜索测 ...

  4. 【测试工具】这些APP实用测试工具,不知道你就out了!

    本期,我将给大家介绍14款实用的测试工具,希望能够帮到大家!(建议收藏) UI自动化测试工具 1. uiautomator2 Github地址:https://github.com/openatx/u ...

  5. xamarin.forms uwp app部署到手机移动设备进行测试,真机调试(device portal方式部署)

    最近学习xamarin.刚好 手上有一个lumia 930.所以试一试把uwp app部署到手机上,并真机调试一把. 目前环境: 1.开发pc电脑是win10,版本1607.加入了insider,所以 ...

  6. elasticsearch http 搜索 测试

    1.查询所有的documents http://192.168.43.45:9200/_search boost parameter 细粒度搜索条件权重控制 如:组装多个查询条件,其中一个匹配的想要优 ...

  7. xunsearch搜索测试

    1.导入测试数据 cd $prefix/sdk/php util/Indexer.php --source=csv --clean demo 然后出现 初始化数据源 ... csv WARNING: ...

  8. Web测试转App测试不看不知道

    Web测试 Web通常指的是互联网应用系统,比如税务电子化征管档案系统.金融数据平台.餐饮商家管理后台等等,其实质是C/S的程序. C是Client--客户端,S是Server--服务器. Web中的 ...

  9. 真不知道JavaScrip【数组】还有这么多东西....

    前段时间在频繁的用数组,但一直不知道JavaScript 数组还有这么多东西,收集了一下看看: 首先:数组是对象的特殊形式,接下来看看它有哪些方法.....push()在末尾增加一个或者是多个 uns ...

随机推荐

  1. 面试中常问的List去重问题,你都答对了吗?

    面试中经常被问到的list如何去重,用来考察你对list数据结构,以及相关方法的掌握,体现你的java基础学的是否牢固. 我们大家都知道,set集合的特点就是没有重复的元素.如果集合中的数据类型是基本 ...

  2. Css中display:inline-block用法详解

    display:block就是将元素显示为块级元素 block元素的特点是: 总是在新行上开始: 高度,行高以及顶和底边距都可控制: 宽度缺省是它的容器的100%,除非设定一个宽度 <div&g ...

  3. javascript:原型与原型链

    一,函数对象 所有引用类型(函数,数组,对象)都拥有__proto__属性(隐式原型) 所有函数拥有prototype属性(显式原型)(仅限函数) 原型对象:拥有prototype属性的对象,在定义函 ...

  4. Everything实用技巧随手记

    Everything是一款非常好用的即时搜索软件,针对文件名目录名搜索,并且支持通配符.正则表达式,胜过windows自带搜索N倍. 在使用中有些许不便,比如搜索结果中出现很多快捷方式,或者搜索到不想 ...

  5. Spring 笔记 -06- 从 MySQL 建库到 登录验证数据库信息(maven)

    Spring 笔记 -06- 从 MySQL 建库到 登录验证数据库信息(maven) 本篇和 Spring 没有什么关系,只是学习 Spring,必备一些知识,所以放在这里了. 本篇内容: (1)M ...

  6. windows下安装并启动hadoop2.7.2

    64位windows安装hadoop没必要倒腾Cygwin,直接解压官网下载hadoop安装包到本地->最小化配置4个基本文件->执行1条启动命令->完事.一个前提是你的电脑上已经安 ...

  7. Charles抓取https请求

    最近公司将Windows产品的http请求,替换成https请求了,当https请求超过5次失败,就自动切换回http请求.测试时使用Charles抓包测试. 一.http抓包 http抓包比较简单, ...

  8. su、sudo、su - root的区别

    su和sudo的区别 共同点:都是root用户权限: 不同点:su只获得root权限,工作环境不变,还是在切换之前用户的工作环境:sudo是完全获得root的权限和root的工作环境. sudo:表示 ...

  9. 为notifyIcon.icon属性赋图片

    System.Drawing.Bitmap bp; bp = new Bitmap(Application.StartupPath + @"\image\" + MeiYeShuo ...

  10. 结合 Redis 实现同步锁

    1.技术方案 1.1.redis的基本命令 1)SETNX命令(SET if Not eXists) 语法:SETNX key value 功能:当且仅当 key 不存在,将 key 的值设为 val ...