Cod sursa(job #890942)
Utilizator | Andrei Tiberiu Tibixb | Data | 25 februarie 2013 12:49:40 |
---|---|---|---|
Problema | Sum | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.61 kb |
#include<fstream>
using namespace std;
int n, i, t[100001], v[100001], x[100001], s, maxim, q, j;
int main(){
ifstream f("sum.in");
ofstream g("sum.out");
f>>n;
for(i=1; i<=n; i++){
f>>x[i];
if(x[i]>maxim)
maxim=x[i];
}
for(i=2; i<=2*maxim; i++){
if(v[i]==0){
t[++q]=i;
for(j=i+i; j<=2*maxim; j+=i)
v[j]=1;
}
}
for(i=1; i<=n; i++){
s=0;
for(j=1; j<=q && t[j]<=2*x[i]; j++){
s+=t[j];
}
s+=x[i];
g<<s<<"\n";
}
return 0;
}