规律题
文章平均质量分 62
skajre
这个作者很懒,什么都没留下…
展开
-
ZOJ 3939 The Lucky Week
最后输出年份的时候公式算错了,应该用(n+l-1)/2058算出增加的年数,而y/400则代表原来的年数,她们最后相加乘以400再加上从表里搜索到的年数救赎所求年了。 打表时用到了蔡勒公式。 #include #include #include using namespace std; struct year{ int y,m,d; }lucky[5000]; int len=0; b原创 2016-06-05 23:14:03 · 235 阅读 · 0 评论 -
Codeforces 707C Pythagorean Triples(数学)
题意:给你三角形的一条边的长度,问你是否存在有这条边的勾股数,如果存在,输出另外两个数,否则输出-1 类型:数学 分析:经过分析,可以发现当a>1并且a为奇数的时候,把a分解成一半 n=(a-1)/2;则b=2*n*(n+1),c=2*n*(n+1)+1; 当a>2并且a为偶数的时候,把a分解成一半 n=a/2;则b=n*n-1,c=n*n+1;原创 2016-08-21 09:05:11 · 228 阅读 · 0 评论 -
HDU 5884 Sort(哈夫曼树+二分)
其实这是哈夫曼树,一开始用优先队列写超时,后来发现不用优先队列,因为每次相加后的值总是大于之前相加的,那么只需要用普通队列就可以了,而且这个队列是单调递增的,然后取原数组的头或者单调队列的头就可以了。 但是没有考虑到(n-1)%(k-1)==0,感觉这个条件比较难想,需要实现预处理合并一次。 感觉可以用数学归纳法得出。// // main.cpp // Richard // // Cre原创 2016-09-22 10:34:22 · 258 阅读 · 0 评论 -
UVA 1418 WonderTeam(假设)
这题目真是看的云里雾里。 #include using namespace std; int main() { int n; while(cin>>n) { if(n==0) break; if(n<=3) cout<<1<<endl; else if(n==4) cout<<2<<endl; else co原创 2016-10-06 20:03:53 · 223 阅读 · 0 评论