我们来汇总一下比较著名的模板题,有些很难,而有些则简直就是水题
一、求一个正整数的质因数之和
题目来源:
牛客—大佬数
关键是求一个数的所有质因数:
这个题需要使用两层循环,一层for循环遍历所有的因数,一层while循环判断是否有重复的质因数,那怎么保证求出来的因数都是质因数呢?
我们来看,假设此时i循环到了4 即 i == 4 , 因为前面有个 i==2 是4 的因数,所以被除数里面只要有4的因数,一定有2的因数,又加上我们第二层while循环 ,质因数2已经被除干净了,连2这个因数都不存在了,4这个因数一定不存在。
还有不懂请看这篇博客:
csdn博客
#include<iostream>using namespace std;int main(){int n, ans = 0;scanf("%d",&n);for(int i = 2; i <= n; i++){while(n % i == 0) // 判断是否有重复的因数{ans += i;n /= i;}}if(ans > 610) printf("a sdl wsl");else printf("tcl");return 0;}
