记录编号 138777 评测结果 AAAAAAAAAA
题目名称 韩信点兵 最终得分 100
用户昵称 Gravatar传奇 是否通过 通过
代码语言 Pascal 运行时间 0.022 s
提交时间 2014-11-06 14:50:12 内存使用 0.17 MiB
显示代码纯文本
program cojs1786;
type
  node=record
    p,x:longint;
    ot:int64;
  end;

var
  n,k,t,ji,sum:int64;
  i,j,m:longint;
  a:array[1..10] of node;
begin
  assign(input,'HanXin.in');
  assign(output,'HanXin.out');
  reset(input);
  rewrite(output);

  readln(n,m);
  ji:=1;
  for i:=1 to m do
    begin
      read(a[i].p,a[i].x);
      ji:=ji*a[i].p;
    end;
  for i:=1 to m do
    a[i].ot:=ji div a[i].p;
  sum:=0;
  for i:=1 to m do
    begin
      t:=a[i].ot;
      while t mod a[i].p<>1 do
        begin
          inc(t,a[i].ot);
          if t mod a[i].p=0 then begin writeln(-1); halt; end;
        end;
      t:=t*a[i].x;
      inc(sum,t);
    end;
  while sum>n do
    dec(sum,ji);
  while sum<n do
    inc(sum,ji);
  dec(sum,ji);
  if sum<0 then begin writeln(-1);halt; end;
  writeln(n-sum);

  close(input);
  close(output);
end.