题意:求输入的n个数中所含素因子最大的数字。
注意:此题中1也是素数。
思路:数据不算太大,朴素判断素数即可。
max标记最大素因子。
pos标记所含最大素因子的数。
#include<cmath> #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using namespace std; int f(int n) { for(int i = 2; i < n; i++) if(n%i==0) return 0; return 1; } int main(void) { int t; while(~scanf("%d",&t)) { int pos = 0; int max = 0; while(t--) { int n; scanf("%d",&n); for(int i = 1; i <= n; i++) { if(n%i==0&&f(i)) { if(max<i) { max = i; pos = n; } } } } printf("%d\n",pos); } return 0; }
原文地址:https://www.cnblogs.com/AC-AC/p/9739578.html
时间: 2024-10-14 22:41:21