打表处理(Case 1超时)

对m进行枚举,每次枚举进行一次判断

因为好人坏人均为k个,那么只要让下一个死亡的人的位置p保证在1~剩余坏人数量之间即可,不满足则直接break枚举下一个m

实际上对于m,因为m必须是 [2kC+1,2kC+k] C∈N+ 之间的数,所以还能再优化,但下面的代码已经能够在78ms左右过题,故可以忽略

#include<stdio.h>
int main(){
int s[],k,m,p,d;
for(k=;k<;k++){
m=k;
while(){
for(d=p=;d<k;d++){
p=(p+m-)%(*k-d);
if(p<k)
break;
}
if(d==k)
break;
m++;
}
s[k]=m;
}
while(scanf("%d",&k)!=EOF)
printf("%d\n",s[k]);
return ;
}

ZJNU 1067 - 约瑟夫——中级的更多相关文章

  1. ytu 1067: 顺序排号(约瑟夫环)

    1067: 顺序排号 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 31  Solved: 16[Submit][Status][Web Board] ...

  2. ZJNU 1531 - 丢手绢--中级

    可以将相同的人数分块存在数组gp中先 例如RRGGGRBBBBRR 则gp[1~5]={2,3,1,4,2} 首先可以知道,如果要让没有相邻的相同,只需要每个gp[i]/2向下取整即可得出最少需要改变 ...

  3. ZJNU 1164 - 考试排名——中级

    1.如果一个单元为0,表示没做过这题,不计入成绩 2.如果一个单位为负数,表示做错了这题,不计入成绩 所以只要一个单元为正数(不论是否有括号)都说明做出了这一题,计入成绩 将名字和成绩都当作字符串读入 ...

  4. ZJNU 1160 - 不要62——中级

    取模判断,数组模拟 /* Written By StelaYuri */ #include<stdio.h> ]; int main(){ int n,m,i,s,t; ;i<;i+ ...

  5. ZJNU 1125 - A == B ?——中级

    处理后再判断即可,处理过程注意考虑全面. /* Written By. StelaYuri */ #include<iostream> #include<string> usi ...

  6. ZJNU 1069 - 表达式的转换——中级

    栈运用的模板题,对于符号进行出入栈操作,每次与栈顶的符号进行优先级判断,得出第一行后缀表达式. 在其后的化简计算中,每次用一个特殊符号(代码中使用了'?')代替原来的计算结果引用,并开一个数组表示每次 ...

  7. ZJNU 1153 - 找单词——中级

    状态转移b[i]记录价值为i的单词种类数d[j+k*i]+=b[j] , k<=a[i]&&j+k*i<=50表示价值为j+k*i的单词可以由价值为j的单词加上k个i字母转 ...

  8. ZJNU 1138 - 小兔的棋盘——中级

    二维图的动态规划因为不能穿越对角线,则选取对角线的一边dp即可选取对角线右下侧则x轴上每个点只能由其左侧的点走过去(只有1条)对角线上的点只能由对角线下方的点走过去其他点可以由左侧和下侧两种方式到达因 ...

  9. ZJNU 1133 - Subset sequence——中级

    推出n=1到4时,An排列的种类数分别为1 4 15 64可得(1+1)*2=4(4+1)*3=15(15+1)*4=64...故用一数列r[n]记录An的种类总数当n=3时,列举出以下15种从大到小 ...

随机推荐

  1. MERGE INTO:存在就更新不存在就新增——oracle

    MERGE INTO [your table-name] [rename your table here] USING ( [write your query here] )[rename your ...

  2. weex框架

    weex优势: (1)支持ES6规范 (2)性能优异,开发简介标准,提及小巧. (3)跨平台 weex调试工具:weexplayground weex环境搭建: (1)安装 node.js.npm ( ...

  3. fork系统调用方式成为负担,需要淘汰

    微软研究人员发表论文称用于创建进程的 fork 系统调用方式已经很落后,并且对操作系统的研究与发展产生了极大的负面影响,需要淘汰,作者同时提出了替代方案.相信每位开发者都对操作系统中的 fork () ...

  4. POJ 3663:Costume Party

    Costume Party Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 12607   Accepted: 4977 De ...

  5. 在MFC做DLL动态链接库时,使用boost,出现断言错误

    建立的MFC DLL工程中有使用boost::thread,就会发生compile正常但是一程式执行或者直接编辑就出現ASSERT错误. 错误位置:dllinit.cpp,Line: 587,ASSE ...

  6. 漏洞复现 - ActiveMQ反序列化漏洞(CVE-2015-5254)

    基础知识 MQ(Message Queue):消息队列/消息中间件.消息服务将消息放在队列/主题中,在合适时候发给接收者.发送和接收是异步的(发送者和接收者的生命周期没有必然关系). 队列:消息存在队 ...

  7. 小白学Python——Anaconda安装

    小白:Mr.林,快救救我,我被那些数据压得喘不过气了. Mr.林:小白,表方,怎么了? !   小白:Mr.林,我从公司数据平台上下了一堆数据,如果选择时间范围广的话,平台就卡的动不了,动不动还奔溃, ...

  8. oracle11g忘记管理员密码

    oracle的sys和system密码是我们经常忘记的,忘记之后我们可以通过sqlplus来修改重置. 首先打开sqlplus:在运行处可直接输入打开 进入窗口后,首先输入 sqlplus/as sy ...

  9. [题解] CF438E The Child and Binary Tree

    CF438E The Child and Binary Tree Description 给一个大小为\(n\)的序列\(C\),保证\(C\)中每个元素各不相同,现在你要统计点权全在\(C\)中,且 ...

  10. C#调用C++系列二:传结构体

    这一篇记录下C#调用C++的结构体的方式来使用OpenCV的数据格式,这里会有两种方式,第一种是C#传一个结构体和图像的路径给C++,然后C++将图像加载进来,再把传进来的结构体填满即可,第二种是C# ...