Pagini recente » Diferente pentru problema/far intre reviziile 11 si 12 | Cod sursa (job #1768201) | Diferente pentru problema/dijkstra intre reviziile 11 si 10 | Monitorul de evaluare | Cod sursa (job #2412658)
#include<cstdio>
#define M 2000000
char p[M];
int i=-1,k,t;
inline int A()
{
int s=0;
for(i++;p[i]>47&&p[i]<58;i++)
s=s*10+p[i]-48;
return s;
}
inline int C(int a,int b)
{
for(int t;b;)
t=b,b=a%b,a=t;
return a;
}
inline void S(int x)
{
int i,d=x>999999999?10:x>99999999?9:x>9999999?8:x>999999?7:x>99999?6:x>9999?5:x>999?4:x>99?3:x>9?2:1;
for(i=d-1;i>=0;x/=10,i--)
p[k+i]=x%10+48;
p[k+d]=10,k+=d+1;
}
int main()
{
freopen("euclid2.in","r",stdin),freopen("euclid2.out","w",stdout),fread(p,1,M,stdin),t=A();
while(t--)
S(C(A(),A()));
fwrite(p,1,k,stdout);
}