codeforces 735d Taxes
2016-11-28 17:48
253 查看
题意
将n拆成k个数(k可以为1),使得每个拆分后的数的最大因子相加最小。
思路
数学结论,哥德巴赫猜想。分成自身为质数,大于2的偶数,大于2的奇数,需要注意奇数中拆分出2的情况。
代码
#include <stdio.h> #include <string.h> #include <math.h> int judge(int a){ int flag = 1; for(int i = 2;i <= (int)sqrt(a);i ++){ if(a%i == 0){ flag = 0;break; } } return flag; } int main(){ int n; scanf("%d",&n); if(n == 2) printf("1\n"); else{ if(n%2){ if(judge(n)) printf("1\n"); else if(judge(n - 2)) printf("2\n"); else printf("3\n"); } else printf("2\n"); } return 0; }
相关文章推荐
- CodeForces - 735D Taxes
- codeforces 735D Taxes(数论)
- Codeforces 735D Taxes
- CodeForces 735D Taxes
- CodeForces - 735D Taxes 数论 哥德巴赫猜想和弱哥德巴赫猜想
- codeforces 735D Taxes 哥德巴赫猜想
- CodeForces 735D Taxes
- CodeForces - 735D Taxes(数学)
- codeforces 735D Taxes 哥德巴赫猜想
- Codeforces 735D Taxes
- codeforces 281 div2
- Codeforces 625B War of the Corporations 【暴力】
- Codeforces 702B
- codeforces 730 A Toda 2
- codeforces 835D
- CodeForces 869 C.The Intriguing Obsession(组合数学)
- Codeforces 4A. Watermelon
- codeforces 622A A. Infinite Sequence (二分)
- codeforces 701C. They Are Everywhere two pointers
- CodeForces - 687A (连通图染色)