poj3048

/* * poj3048.cpp * * Created on: 2010-8-14 * Author: friendy */ //巨暴力无语的一道水题 #include #include #include using namespace std; int p[4000], pNum = 0; bool f[20001]; void Prime() { int i, j; for (i = 2; i < 20001; i++) { if (!f[i]) { p[pNum++] = i; } for (j = 0; j < pNum && i * p[j] < 20001; j++) { f[i * p[j]] = 1; if (!(i % p[j])) break; } } } int main() { int i, n, t, mmax = -1, pos; scanf("%d", &n); Prime(); while (n--) { scanf("%d", &t); if (t == 1) { if (mmax < 1) { mmax = 1; pos = 1; } } else { for (i = pNum - 1; i >= 0; i--) { if (t >= p[i] && t % p[i] == 0) { if (mmax < p[i]) { mmax = p[i]; pos = t; break; } } } } } printf("%d/n", pos); }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值