HDU 1722 Cake 数学题

#include<iostream>

#include<stdio.h>

#include<math.h>

using namespace std;

long long gcd(long long a,long long b)

{

    return b==0?a:gcd(b,a%b); 

}

int main()

{

    long long a,b;

    while(cin>>a>>b)//这道题居然是多CASE= =,题目也不给说一声

    cout<<a+b-gcd(a,b)<<endl;

    return 0;

} 

证明方法很麻烦= =

我们就单纯的把蛋糕想成是一个长方形的,然后竖着切吧,不要想那么多

详细证明如下:http://blog.sina.com.cn/s/blog_696187fd0100soe2.html

你可能感兴趣的:(HDU)