比赛 |
20141105 |
评测结果 |
AAAAAAATAT |
题目名称 |
韩信点兵 |
最终得分 |
80 |
用户昵称 |
Ra-xp |
运行时间 |
2.336 s |
代码语言 |
C++ |
内存使用 |
0.31 MiB |
提交时间 |
2014-11-05 09:13:34 |
显示代码纯文本
#include<iostream>
#include<fstream>
#include<algorithm>
#include<string>
#include<cmath>
#define MAXN 10000
#define SIZE 10+5
using namespace std;
int main()
{
freopen("HanXin.in","r",stdin);
freopen("HanXin.out","w",stdout);
int i, n, su[SIZE], yu[SIZE], com1=0, com2=0, T;
long long line, k;
cin>>line>>n;
for(i=1;i<=n;i++)
{
cin>>su[i]>>yu[i];
if(su[i]>com1)
{
com1=su[i];
com2=yu[i];
}
}
k=line/com1*com1+com2;
for(;;)
{
T=0;
k=k-com1;
if(k<0)
{
cout<<-1<<endl;
break;
}
for(i=1;i<=n;i++)
{
if(k-k/su[i]*su[i]!=yu[i])
{
break;
}
T++;
}
if(T==n)
{
cout<<line-k<<endl;
break;
}
}
return 0;
}