AcWing 1205. 买不到的数目
原题链接
简单
作者:
zzoce
,
2020-02-26 15:44:27
,
所有人可见
,
阅读 589
#include <iostream>
#include <cmath>
using namespace std;
int map[10001000];
int main ()
{
int a[2];
cin>>a[0]>>a[1];
map[0]=1;
for (int j=0;j<10000000;j++)//10000000(尽可能的大)内把能拼凑出来的数全部找到
{
if (map[j]==1)
{
map[j+a[0]]=1;
map[j+a[1]]=1;
}
}
int x=min(a[0],a[1]);//两个数的最小值
//如果连续X个数都可以拼凑出来,那么之后的数都可以拼凑出来(只要加X即可)
int t=0;
int cnt;
for (int i=0;i<10000000;i++)
{
if (map[i]==0)
{
t=0;
cnt=i;
}
if (map[i]==1)
{
t++;
}
if (t==x)
{
break;
}
}
cout<<cnt<<endl;
return 0;
}