#28619: 解題思路


harlivy_forever (噴火水雞肉飯)

學校 : 國立嘉義高級中學
編號 : 160563
來源 : [140.113.136.212]
最後登入時間 :
2024-10-23 11:29:05
g498. 兔子跳躍 (Rabbit) -- TOI練習賽202110新手組第3題 | From: [218.164.217.1] | 發表日期 : 2021-12-22 01:45

先確定N和M其中大者和小者,求出D除以小者(此處假設為N)的商,再在這個範圍內將N乘以1、2、3、......一直乘到D除以N的商,測試在這段範圍中D減去N乘以某倍的乘積是否可被M整除

 

不太會描述,附上程式碼

#include <iostream>

 

using namespace std;

 

int main()

{

int N,M,n,m,D;

while(cin >> n >> m >> D)

{

N=min(n,m);

M=max(n,m);

int a=0;

if(N<=D || M<=D)

{

int s=D/N,k;

for(int i=0;i<=s;i++)

{

k=D-(N*i);

if(k%M==0)

{

cout << "YES" << endl;

a=1;

break;

}

}

}

if(a==0)

cout << "NO" <<endl;

}

return 0;

}

 

可能不算很好的解法,但我的智商就那樣了

 
ZeroJudge Forum