Codeforces Round #509 (Div. 2)B题Buying a TV Set

2 篇文章 0 订阅

​
#include<bits/stdc++.h>
using namespace std;
int main() {
	long long a, b, x, y, g;
	cin >> a >> b >> x >> y;
	g = __gcd(x, y);
	x /= g;
	y /= g;
	cout << min(a / x, b / y);
}

​

本题目的意思是商店中有任意高和宽的电视屏幕,在w<=a,h<=b的条件下求有多少块屏幕w/h符合特定的比例x/y。

先求出最小公约数g,再利用此最小公约数将x/y化成最简比例,这个比例本身代表了符合要求的最小屏幕,然后看a,b范围内有之快最小屏幕的整数倍屏幕共几块,a/x,b/y中比较小的那一个即为题解(屏幕必须既符合w<=a,又符合h<=b,所以取更小值)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值