2016.10.30 济南学习 Day2 下午 T1】的更多相关文章

他 [问题描述] 一张长度为N的纸带,我们可以从左至右编号为0 − N(纸带最左端标号为 0).现在有M次操作,每次将纸带沿着某个位置进行折叠,问所有操作之后纸带 的长度是多少. [输入格式] 第一行两个数字N, M如题意所述. 接下来一行M个整数代表每次折叠的位置. [输出格式] 一行一个整数代表答案. [样例输入] 5 2 3 5 [样例输出] 2 [样例解释] 树上有只鸟. [数据规模与约定] 对于60%的数据,N, M ≤ 3000. 对于100%的数据,N ≤ 10^18 , M ≤…
满分:300分 直接全部爆零,真的是很坑啊! 10.30的题目+数据:链接:http://pan.baidu.com/s/1jHXLace 密码:i784 T1: 题目中的难点就是每次折叠的点可能应经被覆盖了,我的做法是递归去推出它现在在哪个位置,不仅超时,而且答案错误. 也曾想过用数组去存下它当前的位置,但是被10^18的数据吓到了. 正解:并不是所有的坐标都有用,仅仅是那m个将要用到的点有用,所以每次折叠,就只对之后的有用的k个点进行更新,这样就行了. 时间复杂度O(m^2) 不会超时的.…
题目+数据:链接:http://pan.baidu.com/s/1gfBg4h1 密码:ho7o 总共得了:130分, 1:100分  2:30分(只会这30分的暴力) 3:0(毫无思路) 虽然不高,但是比较满意,因为把自己会的分数都拿到了. T1:100分 /* T1明显是个数论题. 正确的思路:把n!质因数分解,把所有质因数的指数都取到最大的偶数,它们的乘积便是最终的结果. 有一种很快的方法在Eular筛中可以n!的质因数分解. if(!is_prim[i]) { prim[++prim[0…
T1 题意:从1− n中找一些数乘起来使得答案是一个完全平方数,求这个完全平方数 最大可能是多少. 解析: 1.  质因数分解 2.  1->n用质因数指数的相加的形式将1*n累乘起来 3.  扫一遍指数为奇数的质因数都-1,偶数的不变 4.  快速幂乘一遍,同时取模 #include<iostream> #include<cstdio> #include<cstring> #define ll long long #define mod 100000007 us…
欧拉函数(phi)题目描述: 已知(N),求phi(N). 输入说明: 正整数N. 输出说明: 输出phi(N). 样例输入: 8 样例输出: 4 数据范围: 对于20%的数据,N<=10^5 对于60%的数据,N<=10^9 对于100%的数据,N<=10^18 在这里先普及一下欧拉函数: 在数论,对正整数n,欧拉函数varphi(n)是少于或等于n的数中与n互质的数的数目.此函数以其首名研究者欧拉命名,它又称为Euler's totient function.φ函数.欧拉商数等. 例…
幸运数字(number)Time Limit:1000ms Memory Limit:64MB题目描述LYK 最近运气很差,例如在 NOIP 初赛中仅仅考了 90 分,刚刚卡进复赛,于是它决定使用一些方法来增加自己的运气值.它觉得,通过收集幸运数字可以快速的增加它的 RP 值.它给幸运数字下了一个定义: 如果一个数 x 能被 3 整除或被 5 整除或被 7 整除, 则这个数为幸运数字.于是它想让你帮帮它在 L~R 中存在多少幸运数字.输入格式(number.in)第一行两个数 L,R.输出格式(…
完美的序列(sequence)Time Limit:1000ms Memory Limit:64MB题目描述LYK 认为一个完美的序列要满足这样的条件:对于任意两个位置上的数都不相同.然而并不是所有的序列都满足这样的条件.于是 LYK 想将序列上的每一个元素都增加一些数字(当然也可以选择不增加),使得整个序列变成美妙的序列.具体地,LYK 可以花费 1 点代价将第 i 个位置上的数增加 1,现在 LYK 想花费最小的代价使得将这个序列变成完美的序列.输入格式(sequence.in)第一行一个数…
NP(np)Time Limit:1000ms Memory Limit:64MB题目描述LYK 喜欢研究一些比较困难的问题,比如 np 问题.这次它又遇到一个棘手的 np 问题.问题是这个样子的:有两个数 n 和 p,求 n 的阶乘对 p 取模后的结果.LYK 觉得所有 np 问题都是没有多项式复杂度的算法的, 所以它打算求助即将要参加 noip的你,帮帮 LYK 吧!输入格式(np.in)输入一行两个整数 n,p.输出格式(np.out)输出一行一个整数表示答案.输入样例3 4输出样例2数据…
取模(mod) [题目描述] 有一个整数a和n个整数b_1, …, b_n.在这些数中选出若干个数并重新排列,得到c_1,…, c_r.我们想保证a mod c_1 mod c_2 mod … mod c_r=0.请你得出最小的r,也就是最少要选择多少个数字.如果无解,请输出-1. [输入说明] 输入文件的第一行有一个正整数T,表示数据组数. 接下去有T组数据,每组数据的第一行有两个正整数n和a. 第二行有n个正整数b_1, …, b_n. [输出说明] 一行,输出答案. [样例输入] 2 2…
巧克力棒(chocolate)Time Limit:1000ms Memory Limit:64MB题目描述LYK 找到了一根巧克力棒,但是这根巧克力棒太长了,LYK 无法一口吞进去.具体地,这根巧克力棒长为 n,它想将这根巧克力棒折成 n 段长为 1 的巧克力棒,然后慢慢享用.它打算每次将一根长为 k 的巧克力棒折成两段长为 a 和 b 的巧克力棒,此时若 a=b,则LYK 觉得它完成了一件非常困难的事,并会得到 1 点成就感.LYK 想知道一根长度为 n 的巧克力棒能使它得到最多几点成就感.…