#include int main(void) { int A,B,surplus = 1,left,right,most_anser; scanf("%d %d",&A,&B); if(A+B < A*B){ right = A+B; left = A*B; }else{ right = A*B; left = A+B; } while(surplus != 0){ surplus = left % right; //最大公約数を保存 most_anser = right; left = right; right = surplus; } printf("%d",most_anser); return 0; }