思路:
刚看到这个题还是比较懵,虽然看懂了题意,但是并没有什么思路。于是列举了大量的例子,发现了错误的规律,就直接WA了。百思不得其解,于是就上网找了一下题解。才真正知道原理。可以把蛋糕看成是矩形,然后先切均等切成p块,然后切成q块,减去重叠的切线,也就是q和p的公约数,就是蛋糕的块数。下面给手写图示:

http://blog.youkuaiyun.com/niushuai666/article/details/7011139
刚看到这个题还是比较懵,虽然看懂了题意,但是并没有什么思路。于是列举了大量的例子,发现了错误的规律,就直接WA了。百思不得其解,于是就上网找了一下题解。才真正知道原理。可以把蛋糕看成是矩形,然后先切均等切成p块,然后切成q块,减去重叠的切线,也就是q和p的公约数,就是蛋糕的块数。下面给手写图示:
http://blog.youkuaiyun.com/niushuai666/article/details/7011139
不难理解,但是能想到我是真的佩服
#include <stdio.h>
#include <iostream>
using namespace std;
int gcd(int x, int y){
int g;
if (y==0)
g = x;
else
g = gcd(y, x%y);
return g;
}
int main()
{
int p, q;
while (scanf("%d %d", &p, &q) != EOF){
int gcdx = gcd(p, q);
//cout << gcdx;
cout << p+q-gcdx << endl;
}
return 0;
}