Pagini recente » Cod sursa (job #364931) | Cod sursa (job #108510) | Cod sursa (job #1841344) | Cod sursa (job #529514) | Cod sursa (job #109480)
Cod sursa(job #109480)
/*
*
*
infoarena - preONI 2008 - Runda I - Pairs
*
*
*/
#include<stdio.h>
#define INPUT "pairs.in"
#define OUTPUT "pairs.out"
FILE *fin=fopen(INPUT, "r"),*fout=fopen(OUTPUT, "w");
long nrNumere,valori[100002];
void readValues(); //function to extract data from input
void solveFunction(); //function to extrapolate a result from given data
long cmmdc(long, long); //function to determine greatest common divisor
inline void printResult(long long val){fprintf(fout, "%lld\n", val);}
int main(){
readValues();
solveFunction();
fclose(fin);
fclose(fout);
return 0;
}
void readValues(){
fscanf(fin, "%ld", &nrNumere);
for(long i=1;i<=nrNumere;++i)
fscanf(fin, "%ld", &valori[i]);
}
void solveFunction(){
long long nrTotal=0;
for(long i=1;i<nrNumere;++i)
for(long j=i+1;j<=nrNumere;++j)
if(cmmdc(valori[i],valori[j])==1)
++nrTotal;
printResult(nrTotal);
}
long cmmdc(long valoareUnu, long valoareDoi){
long temp;
while(valoareDoi!=0){
temp = valoareDoi;
valoareDoi = valoareUnu%valoareDoi;
valoareUnu = temp;
}
return valoareUnu;
}