Comrade Dujikov is busy choosing artists for Timofey's birthday and is recieving calls from Taymyr from Ilia-alpinist.
Ilia-alpinist calls every n minutes, i.e. in minutes n, 2n, 3n and so on. Artists come to the comrade every m minutes, i.e. in minutes m, 2m, 3m and so on. The day is z minutes long, i.e. the day consists of minutes 1, 2, ..., z. How many artists should be killed so that there are no artists in the room when Ilia calls? Consider that a call and a talk with an artist take exactly one minute.
The only string contains three integers — n, m and z (1 ≤ n, m, z ≤ 104).
Print single integer — the minimum number of artists that should be killed so that there are no artists in the room when Ilia calls.
1 1 10
10
1 2 5
2
2 3 9
1
Taymyr is a place in the north of Russia.
In the first test the artists come each minute, as well as the calls, so we need to kill all of them.
In the second test we need to kill artists which come on the second and the fourth minutes.
In the third test — only the artist which comes on the sixth minute.
转化为最小公倍数,求最小公倍数
#include<iostream>
using namespace std;
int fun(int x,int y)
{
int a=x,b=y,c;
while(b!=0)
{
c=a%b;
a=b;
b=c;
}
return x*y/a;
}
int main()
{
int n,m,z;
cin>>n>>m>>z;
int s=0;
int t=fun(n,m),k=t;
if(k<=z)
s++;
while(k+t<=z)
{
s++;
k+=t;
}
cout<<s<<endl;
return 0;
}
本文探讨了一个有趣的数学问题:如何通过计算最小公倍数来确定在特定时间内杀死多少艺术家以确保每次电话来时房间内没有艺术家。文章提供了一段C++代码实现,通过输入电话间隔、艺术家到来间隔及一天的总分钟数来解决该问题。
1570

被折叠的 条评论
为什么被折叠?



