题目描述:
Greatest common divisor GCD(a, b) of two positive integers a and b is equal to the biggest integer d such that both integers a and b are divisible by d. There are many efficient algorithms to find greatest common divisor GCD(a, b), for example, Euclid algorithm.
Formally, find the biggest integer d, such that all integers a, a + 1, a + 2, …, b are divisible by d. To make the problem even more complicated we allow a and b to be up to googol, 10100 — such number do not fit even in 64-bit integer type!
输入描述:
The only line of the input contains two integers a and b (1 ≤ a ≤ b ≤ 10100).
输出描述:
Output one integer — greatest common divisor of all integers from a to b inclusive.
输入:
1 2
61803398874989484820458683436563811772030917980576 61803398874989484820458683436563811772030917980576
输出:
1
61803398874989484820458683436563811772030917980576
题意:
给出两个整数a,b 求出[a,b]区间中所有整数的最大公约数。
题解:
相等为本身,不相等为1。
代码:
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<iostream>
using namespace std;
char s1[1005],s2[1005];
int main(){
while(scanf("%s%s",s1,s2)!=EOF){
if(strcmp(s1,s2) == 0) printf("%s\n",s1);
else printf("1\n");
}
return 0;
}