记录编号 137947 评测结果 AAAAAAAAAA
题目名称 韩信点兵 最终得分 100
用户昵称 Gravatar黑駒 是否通过 通过
代码语言 Pascal 运行时间 0.009 s
提交时间 2014-11-05 15:13:47 内存使用 0.17 MiB
显示代码纯文本
    var m,t,i,j,k,l,tot:longint;
    n:int64;
    ans,temp,fin,sum:int64;
    p:array[0..100] of longint;
    a:array[0..100] of longint;
    f:array[0..100] of int64;

    begin
    assign(input,'HanXin.in');
    assign(output,'HanXin.out');
    reset(input);
    rewrite(output);
    ans:=1;
    readln(n,m);
    sum:=0;
    for i:=1 to m do
    begin
    readln(p[i],a[i]);
    ans:=ans*p[i];
    end;
    if (ans>n) then begin
      writeln('-1');
      end
      else begin
    for i:=1 to m do
    begin
    tot:=1;
    temp:=ans div p[i];
    j:=1;
    while true do
    begin
   if (((temp*j) mod p[i])=1)
    then begin
    inc(sum,temp*j*a[i]);
    sum:=sum mod ans;
    break;
    end;
    inc(j);
    end;
    end;
    if (sum>n) then begin
    writeln('-1');
    end
    else begin
    while (sum<=n) do
    begin
    inc(sum,ans);
    end;
    dec(sum,ans);
    writeln(n-sum);
    end;
    end;
    close(input);
    close(output);
    end.