摘要:
这道题的坑就在于测试数据大小题目中并没有要求,long long都不行,只能用字符串去存输入的数据。 阅读全文
摘要:
最大的坑就在输入的两个变量的大小并没有规定前面大于后面。。。 下面进行一点时间上的优化,以空间换时间。。。 阅读全文
摘要:
找到该数的所有因子,然后使用一个标记数组去标记为其因子为1,把其因子的倍数 (小于该数) 也标记为1,被标记的数即为其老朋友。 刚开始自己的做法,找从2到n,所有与该数最大公约数不为1的数之和,最后再加上1,结果超时。。。 然后就想,在做这道题之前做了两道关于打表的题,这道题肯定也是一道打表题,然后 阅读全文
摘要:
这道题也是使用打表来做,普通做法会超时,根HDU 七夕节那道题类似,都是用打表去做 题目大意:求一个数的做大质因子,每个正整数都能够以唯一的方式表示成它的质因子的乘积 解析: 定义一个表格数组 flag[MAX],用来储存每个数的最大质因子的所在质数中排的位置 两层循环:第一层循环遍历数据范围内的全 阅读全文
摘要:
打表做,用一个数组存储数据要求范围内的所有数值的因子之和。第一层循环枚举所有因子,第二层循环把每个该因子倍数的数累加。不断刷新表的值,直到最后更新完毕。 例:2 - 9数值范围内的每个数的因子之和 因为因子不包括本身,所以本身不算是倍数因子1的倍数 因子2的倍数 因子3的倍数 因子4的倍数table 阅读全文
摘要:
贪心策略: 数据(v1, v2),按 v2 - v1 的差值从大到小进行排序 分析: 例(1): v = 10 2件物品:a(2, 5) b(6, 8) 如果先进a,再进b: 进a:v = 10 --> v >= 5 (成立) --> v -= 2 --> v = 8 进b:v = 8 --> v 阅读全文
摘要:
感受: 这道题其实思路其实很简单,按道理说做起来应该可以直接过,可是我依旧调了一个多小时。。。 首先,细节很重要!!! 排序时不小心把return a.second < return b.second,写成了return a.second < return a.second。。。刚开始一直找不到错误 阅读全文
摘要:
一些好久没用,有些忘记的知识点: C++按照不同进制进行输入输出的方式:cin默认按照十进制进行输入,使用八进制或十六进制输入时需要指明相应的数据形式,oct为八进制,hex为十六进制,dex为十进制。 HDU A+B Coming 阅读全文
摘要:
好久没在oj上做题了,刚开始第二天做一道简单题的心得记录。 阅读全文