HDU cake

思路:
刚看到这个题还是比较懵,虽然看懂了题意,但是并没有什么思路。于是列举了大量的例子,发现了错误的规律,就直接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;
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值