
打表
f_zyj
一个追逐蝴蝶的人!
展开
-
51Nod-1016-水仙花数 V2
水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3 + 3^3 = 153,1634 = 1^4 + 6^4 + 3^4 + 4^4)。 给出一个整数M,求 >= M的最小的水仙花数。 Input 一个整数M(10 <= M <= 10^60) Output 输出>= M的最小的水仙花数,如果没有符合条件的水仙花数,则输出:原创 2016-05-17 01:12:30 · 1918 阅读 · 3 评论 -
[kuangbin带你飞]专题二-搜索进阶-B-Eight II
ACM模版描述 题解这道题和 Eight 相似,不过终止状态不唯一了,但是我们可以总结为9种状态,每种状态的核心差别是 X 的位置,所以我们需要打九个表,那么问题来了,怎么才能通过给定的终止(或初始)状态在这九个表中找到对应的关系呢?这里就考到了我们一个替换的思维,让我们想想,如果这些模块不是数字,而是颜色,那么我们会对其进行编号,所以,只要保证初始和终止状态模块对应关系不错,我们就可以随意对其进原创 2017-04-06 01:45:32 · 762 阅读 · 0 评论 -
51Nod-1799-二分答案
ACM模版描述题解我们知道二分的过程中,不管是否有序,对二分结果产生直接影响的是 mid 位置的数据,而其他无关位置的数据就随意一些了,所以我们只需要先通过一边二分求出左右 l 和 r 的更新次数,然后求相关的排列,最后这些无关的位置只是一个阶乘罢了。这里问题也就出在了阶乘,并没有什么特别高效的处理阶乘的手法,所以这里鉴于 n 不是特别大,所以我们可以先写一个程序打一下表,预处理一下……当然,不是要原创 2017-05-30 21:05:58 · 987 阅读 · 0 评论 -
51Nod-TalkingData数据科学精英夏令营挑战赛-B-丢手绢
ACM模版描述题解没有什么是打表不能正面刚的,写一个程序预处理一下,暴力解出这十几个数,然后打表,直接过!代码#include <iostream>using namespace std;int G;int num[] = {0, 2, 7, 5, 30, 169, 441, 1872, 7632, 1740, 93313, 459901, 135865原创 2017-06-18 01:17:44 · 584 阅读 · 0 评论 -
图灵杯-第四届“图灵杯”NEUQ-ACM 程序设计竞赛-G-那么大奶牛之神
ACM模版描述题解虽然官方给了题解,但是不够走心啊~~~题解如下:G:找规律。51#1最优解1+(111-11)/(1+1)51#2最优解2+2/2+2*(2*2)!51#3最优解3!*3+3351#4最优解4!*(√4+√√√(√4^(-4!)))51#5最优解5/5+55-551#6最优解(6!-6*6)/(6+6)-651#7最优解7*7+(7+7)/751#8最优解√√(8原创 2017-06-14 00:07:48 · 723 阅读 · 0 评论 -
51Nod-1831-小C的游戏
ACM模版描述题解先吐个槽,题面有毒,这题的出题人或者翻译人语文水平堪忧啊……这里说的分成几等分只取其中一份有问题,应该是只留下其中的一份,剩下的全部拿走。真是无语=_=这个题,没有多想,直接打表,打表后发现胜败和是否为素数有一定的关系,于是又加了一个素数筛,然后打表(代码 One)的结果如下:此时,打表的范围在 1e31e3 内,于是又尝试打表 1e41e4 以内,发现结果依然没有什么变化,于是大原创 2017-07-15 01:59:47 · 642 阅读 · 0 评论 -
HDU-5878-I Count Two Three
ACM模版描述题解预处理出来一些 2a3b4c7d2^a3^b4^c7^d 的数,从小到大存起来,当然预处理的手段就多了去了,然后呢,在这个序列中二分查找即可了。代码#include <iostream>#include <cstdio>#include <algorithm>using namespace std;const int MAXN = 5555;const int MAXM =原创 2017-06-27 20:52:01 · 447 阅读 · 0 评论 -
HDU-5879-Cure
ACM模版描述题解本来想找一个通项公式,后来发现真的没有什么通项公式,最起码我没有推出来……然后发现这是一个极限,保留五位小数的情况下,当 nn 超过 MAXNMAXN 以后,就肯定是不会变了,所以呢,我们只要暴力打表,预处理出来这些值就好了,如果超过的话,我们直接输出这个极限值就行了哦~~~∑k=1∞(1k2)=π26≈LIMIT=1.64493\sum_{k = 1}^\infty (\frac原创 2017-06-27 21:10:44 · 392 阅读 · 0 评论 -
HDU-2017 多校训练赛2-1006-Funny Function
ACM模版描述题解哎,这个题比赛时要是大胆的打表试试也许可以发现一些规律……看到数学公式推导题我就犯怵……这样子不好╮(╯﹏╰)╭不好。刚拿到这个题时,我认为这个题是类似于斐波那契数列的矩阵求解那样,但是我矩阵好菜的,不会构造单位矩阵,故卒。后来发现这个题除了这种思路,还能找到一个规律,最后变成一个公式。前者方案是官方题解的解法,后者就是比较容易写的解法了……当然问题的关键是是否能找到规律,如果尝试原创 2017-07-30 19:43:29 · 531 阅读 · 0 评论 -
51Nod-1859-Clarke and number
ACM模版描述题解这个题,简单的来,就是暴力打表找规律,注意一点,sqrt()sqrt() 可能存在精度问题,最好自己写一个二分的,因为这个,WAWA 了四回……官方题解也给大家分享一下,写得挺详细的:代码#include <cstdio>using namespace std;typedef long long ll;const ll INF = 1e10; // ll 开方后约为 1e9原创 2017-08-04 15:10:02 · 424 阅读 · 0 评论 -
[kuangbin带你飞]专题二-搜索进阶-A-Eight
ACM模版描述 题解传说中和八皇后一样过分经典的搜索问题,所以网上一查,各种强势题解一大堆,更有丧心病狂者,写了《八数码的八境界》这种深度剖析此问题的 blog,让我不敢再多言此题,毕竟我想不了那么系统,所以,我也就只剩下拿着该大牛的 blog 一饱眼福的任务了……这个问题核心就是搜索,不过问题的优化十分多样化,对于这道题,我的选择是 反向bfs + 打表 + hash,成功 AC,对于其他丧心病原创 2017-04-04 17:52:18 · 689 阅读 · 0 评论 -
51Nod-1714-B君的游戏
ACM模版描述题解典型的Nim游戏,需要求SG函数,打表暴力即可。代码#include <cstdio>typedef unsigned long long ull;const int MAX_DIG = 64;int sg[] = {0, 1, 2, 4, 8, 16, 32, 64, 128, 255, 256, 512, 1024, 2048, 3855, 4096, 8192, 13原创 2016-10-07 10:56:33 · 868 阅读 · 0 评论 -
HDU-1021-Fibonacci Again
ACM模版描述题解很水的一道题,只要你英语能及格,就能过,然而,/(ㄒoㄒ)/~~,像我这种英语36分的渣渣,着实看了半天,最后才明白,F(n)可以三分的话输出yes,否则no……这不就是初等数论嘛?对F(x) mod 3打表找规律不就行了?如果a = b(mod m),且c = d(mod m),则(a + c)(mod m) = (b + d)(mod m), so, F(n)(mod m)原创 2016-10-12 03:10:13 · 386 阅读 · 0 评论 -
NYOJ-24-素数距离问题
描述 现在给出你一些数,要求你写出一个程序,输出这些整数相邻最近的素数,并输出其相距长度。如果左右有等距离长度素数,则输出左侧的值及相应距离。 如果输入的整数本身就是素数,则输出该素数本身,距离输出0输入 第一行给出测试数据组数N(0< N <=10000) 接下来的N行每行有一个整数M(0< M <1000000),输出 每行输出两个整数 A B. 其中A表示离相应测试数据最近的素数,原创 2016-05-24 13:58:46 · 956 阅读 · 0 评论 -
NYOJ-26-孪生素数问题
描述 写一个程序,找出给出素数范围内的所有孪生素数的组数。一般来说,孪生素数就是指两个素数距离为2,近的不能再近的相邻素数。有些童鞋一看到题就开始写程序,不仔细看题,咱们为了遏制一下读题不认真仔细的童鞋,规定,两个素数相邻为1的也成为孪生素数。输入 第一行给出N(0< N <100)表示测试数据组数。 接下来组测试数据给出m,表示找出m之前的所有孪生素数。 (0< m <1000000)输出原创 2016-05-24 21:37:27 · 1425 阅读 · 0 评论 -
51Nod-1015-水仙花数
ACM模版描述题解打表即可。代码#include <iostream>using namespace std;const int NarNum[] = {153, 370, 371, 407, 1634};int main(int argc, const char * argv[]){ int M; while (cin >> M) { for (int i原创 2016-07-30 14:45:20 · 767 阅读 · 0 评论 -
51Nod-1082-与7无关的数
ACM模版描述题解这道题如果暴力解题,超时是一定的,所以需要用到打表来解决。这里需要注意的是数据溢出问题,开始时因为忽略了这个问题,i * i时发生了数据溢出,所以导致大数据测试数据系数WA,找了好久才找到问题所在,于是将i定义为long long后成功AC了。代码#include <iostream>#include <cstring>#include <cstdio>using namesp原创 2016-07-30 16:28:13 · 2800 阅读 · 2 评论 -
51Nod-1632-B君的连通
ACM模版描述题解拿到这道题,很容易发现,有效的数据只有n,其他的连通都是烟雾弹,毕竟保证是一颗树。想到这里,知道是需要找规律推公式,可是半天没能推出公式,然后参考了一些大神的思路……因为每炸毁一条边就多出一个连通图,所以最优是一个连通,最差是n个连通。选择一条边的概率是1/2,选择n条边就是1/2^(n-1),那么最后题目要求乘以2^(n-1),所以抵消了。 那么公式原型就是: 1+2∗C(原创 2016-08-16 17:15:53 · 936 阅读 · 0 评论 -
51Nod-1062-序列中的最大数
ACM模版描述题解打表a[MAXN],然后直接找出前n+1项中的最大数,存入表中。代码#include <iostream>typedef long long ll;using namespace std;const int MAXN = 1e5 + 10;int a[MAXN];int b[MAXN];void init(){ a[0] = 0; a[1] = 1; b原创 2016-08-02 00:34:58 · 819 阅读 · 0 评论 -
"玲珑杯“ ACM热身赛 # 0.5-A-Alarm
ACM模版描述题解2.3.5.7.11等质数的平方分别减1.2.3.4.5等。代码#include <iostream>#include <cstring>typedef long long ll;using namespace std;const int MAXN_ = 1e4 + 10;ll K[MAXN_];/* * 素数筛选,查找出小于等于MAXN的素数 * prime[0]存素数原创 2016-08-05 19:48:08 · 762 阅读 · 0 评论 -
CF-Codeforces Round #366 (Div. 2)-A-Hulk
ACM模版描述题解简单的打表水题!!!╮(╯﹏╰)╭,写这道题时已经12点多了(比赛结束了),十一点(因为通常11点开始)进官网一看,写着12点怎么怎么滴(英文写的)……我看成了12点开始!!!然后,尴尬的局面就出现了,我麻溜写完第一题,却找了半天找不到提交入口/(ㄒoㄒ)/~~,原来是,12点结束……代码#include <iostream>using namespace std;const ch原创 2016-08-08 00:32:08 · 460 阅读 · 1 评论 -
51Nod-1320-合法尾数序列
ACM模版描述题解遇见这种题,直观感觉就是规律题,所以先打表找规律……然后发现,可以找到16一循环的规律,当然,这个循环不是完美的循环,第16位并不是固定的,可是感觉并不是太直观,然后观察第16位,忽然发现这里也存在一定的周期关系,于是直接打64的倍数……然后,发现不光16,只要往后边推,64、256、……都存在一定的周期性,那么我们应该选取那个周期性比较好呢?然后发现题意,数据上限是50个,那么我原创 2016-09-08 18:14:53 · 735 阅读 · 0 评论 -
HDU-6010-Daylight Saving Time
ACM模版描述题解这个题的难点在于题目不好懂,只要读懂了题目,细心一些的人都能做出来。大致的思路是先预处理出来每年的两个时间节点,也就是每年三月份的第二个星期天和每年十一月份的第一个星期天是多少号,然后直接拿数据进行对比即可。现在来说重点,预处理的手段不止一种,常规一些的就是按照年往后推,一年 365365 或者 366366 天,让它们模 77 然后进行偏移,感觉这种方法比较容易想,方法也不错,还原创 2017-11-16 09:17:15 · 582 阅读 · 0 评论