Cod sursa(job #975045)

Utilizator bgdiBogdan Angheluta bgdi Data 18 iulie 2013 21:58:03
Problema Sum Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.84 kb
// Sum - rev 2.cpp : Defines the entry point for the console application.
//

//#include "stdafx.h"
#include <iostream>
#include <fstream>
using namespace std;

ifstream fin ("sum.in");
ofstream fout ("sum.out");

int n, x, i, j, dividers[100000], curr_div_count, a, test, k;
long int sum;

void find_div (int x)
{
	curr_div_count=1;
	for (k=1; k<=x/2; k++) {
		if (x%k==0) {
			dividers[curr_div_count]=k;
			curr_div_count++;
		}
	}
	dividers[curr_div_count]=x;
}		

int main()
{
	fin>>n;
	for (i=1; i<=n; i++) {
		sum=0;
		fin>>x;
		find_div(x);
		for (j=1; j<=2*x; j++) {
			test=1;
			a=2;
			while (a<=curr_div_count) {
				if (j%dividers[a]==0) {
					test=0;
					a=curr_div_count+1;
				}
				else
					a++;
			}
			if (test==1)
				sum=sum+j;
		}
		fout<<sum;
	}
	//system ("PAUSE");
	return 0;
}