《ACM-ICPC程序设计系列 数论及其应用》例题个人答案记录
例1.1:HDU2099(2017/9/4)
本题书上给的答案是从0到99枚举,显然可以优化到每次递增b,这样至少可以把枚举次数减少到1/10。
#include<cstdio>
int a,b;
int main()
{
while(scanf("%d%d",&a,&b) && a!= && b!=)
{
a*=;
for(int cnt=,now=a/b*b; now <= a+; now+=b)
{
if(a<=now && now<=a+)
{
if(++cnt != ) printf(" ");
printf("%02d",now%);
}
}
printf("\n");
}
}
例1.2:NEFU115 (2017/9/4)
本题暂时除了书上说的,没想到其他好办法,题目的要求使得我们根本不可能通过求斐波那契数列来解。

类似的也可以证明其余两个。
#include<cstdio>
int n;
int main()
{
while(scanf("%d",&n)!=EOF)
{
if(n%==) printf("YES\n");
else
{
if(n%==) printf("3\n");
else if(n%==) printf("4\n");
else printf("NO\n");
}
}
}
例1.6:POJ1061(2017/9/15)
详见http://www.cnblogs.com/dilthey/p/7529257.html
例1.7:NEFU84(2017/9/17)
详见http://www.cnblogs.com/dilthey/p/7534710.html
例2.2:NEFU117(2017/9/17)
详见http://www.cnblogs.com/dilthey/p/7536800.html
例2.3:NEFU2(2017/9/21)
详见http://www.cnblogs.com/dilthey/p/7571967.html
例2.6:HDU2098(2017/9/22)
与例2.3如出一辙,稍作修改即可;
#include<cstdio>
#include<cstring>
#include<cmath>
#define MAX 16777220
bool isPrime[MAX];
int n;
void screen()//埃筛求素数
{
memset(isPrime,,sizeof(isPrime));
isPrime[]=isPrime[]=;
int sqrt_MAX=(int)ceil(sqrt(MAX));
for(int i=;i<=sqrt_MAX;i++)
{
if(isPrime[i]) for(int j=i*;j<=MAX;j+=i) isPrime[j]=;
}
}
int main()
{
screen();
while(scanf("%d",&n) && n!=)
{
int cnt=;
for(int i=;i<=n/;i++)
{
if(i!=n-i && isPrime[i] && isPrime[n-i]) cnt++;
}
printf("%d\n",cnt);
}
}
例2.8:POJ2689(2017/9/22)
详见http://www.cnblogs.com/dilthey/p/7577275.html
例2.10:NEFU118(2017/9/24)
详见http://www.cnblogs.com/dilthey/p/7588382.html
《ACM-ICPC程序设计系列 数论及其应用》例题个人答案记录的更多相关文章
- 2014嘉杰信息杯ACM/ICPC湖南程序设计邀请赛暨第六届湘潭市程序设计竞赛
比赛链接: http://202.197.224.59/OnlineJudge2/index.php/Contest/problems/contest_id/36 题目来源: 2014嘉杰信息杯ACM ...
- 【转】lonekight@xmu·ACM/ICPC 回忆录
转自:http://hi.baidu.com/ordeder/item/2a342a7fe7cb9e336dc37c89 2009年09月06日 星期日 21:55 初识ACM最早听说ACM/ICPC ...
- 电子科技大学第八届ACM趣味程序设计竞赛第四场(正式赛)题解
A. Picking&Dancing 有一列n个石子,两人交替取石子,每次只能取连续的两个,取走后,剩下的石子仍然排成1列.问最后剩下的石子数量是奇数还是偶数. 读懂题意就没什么好说的. #i ...
- 2013年山东省第四届ACM大学生程序设计竞赛-最后一道大水题:Contest Print Server
点击打开链接 2226: Contest Print Server Time Limit: 1 Sec Memory Limit: 128 MB Submit: 53 Solved: 18 [Su ...
- 2015 ACM / ICPC 亚洲区域赛总结(长春站&北京站)
队名:Unlimited Code Works(无尽编码) 队员:Wu.Wang.Zhou 先说一下队伍:Wu是大三学长:Wang高中noip省一:我最渣,去年来大学开始学的a+b,参加今年区域赛之 ...
- [C++]环状序列(CircularSequence,ACM/ICPC Seoul 2004,UVa1584)
Question 例题3-5 环状序列(CircularSequence,ACM/ICPC Seoul 2004,UVa1584) 长度为n的环状串有n种表示方法,分别为从某个位置开始顺时针得到,在这 ...
- [C++]最小生成元 (Digit Generator, ACM/ICPC Seoul 2005, UVa1583)
Question 例题3-5 最小生成元 (Digit Generator, ACM/ICPC Seoul 2005, UVa1583) 如果x+x的各个数字之和得到y,就是说x是y的生成元.给出n( ...
- Alice and Bob(2013年山东省第四届ACM大学生程序设计竞赛)
Alice and Bob Time Limit: 1000ms Memory limit: 65536K 题目描述 Alice and Bob like playing games very m ...
- ACM/ICPC 之 BFS(离线)+康拓展开(TSH OJ-玩具(Toy))
祝大家新年快乐,相信在新的一年里一定有我们自己的梦! 这是一个简化的魔板问题,只需输出步骤即可. 玩具(Toy) 描述 ZC神最擅长逻辑推理,一日,他给大家讲述起自己儿时的数字玩具. 该玩具酷似魔方, ...
随机推荐
- orcle时间
Oracle计算时间差函数 两个Date类型字段:START_DATE,END_DATE,计算这两个日期的时间差 (分别以天,小时,分钟,秒,毫秒): 天: ROUND(TO_NUMBER(END_D ...
- SQL利用CASE按分组显示合计
按行显示的合计 select game, sum(purchase) as purchase_sum from purchase group by game; 按列显示的合计 select sum(c ...
- 【代码审计】LaySNS_v2.2.0 前台XSS跨站脚本漏洞
0x00 环境准备 LaySNS官网:http://www.laysns.com/ 网站源码版本:LaySNS_v2.2.0 程序源码下载:https://pan.lanzou.com/i0l38 ...
- Mybatis输入输出映射
一.输入映射 1.传递简单类型 <select id="findUserById" parameterType="int" resultType=&quo ...
- mysql学习笔记(三)
-- 主键冲突(duplicate key) ,'xujian','anhui'); ,'xiewei','anhui'); ,'luyang','anhui');-- 主键冲突了 -- 可以选择性的 ...
- 命令行连接mysql服务器时 报Can't connect to local MySQL server through socket 'xxx.sock'错误
本来之前用的好好的mysql服务器,突然就报Can't connect to local MySQL server through socket 'xxx.sock'错误了 遇到该问题思路首先是:检查 ...
- jQuery的init都做了些什么
// 初始化jQuery对象,即jQuery.fn.init对象 // @param selector 选择器,可能是DOM对象.html字符串.jQuery对象.函数或其他任意值. // @para ...
- Android 查看system/bin目录下支持哪些命令?
C:\Users\yonghuming>adb shell "ls system/bin" >log acpiadbdamapp_processapp_process3 ...
- 画一条0.5px的边
1.scale方法 { height: 1px; transform: scaleY(0.5); transform-origin: 50% 100%; // 要指定origin值, 要不然会模糊 c ...
- 2015.7.7js-07-2(基础)
1.用求模来计算时间,秒%60,就能获取剩余的秒 var s = 362; var minute = parseInt(s/60) + "分" //取得分 var second = ...