program siustuvai_ir_imtuvas;
  { 127 u‘davinys }
  const MAX_N = 20; { maksimalus si—stuv— skai‡ius }
  type lentele = array [1..MAX_N] of integer;

  function dbd (x, y: integer): integer;
  { didØiausias bendras daliklis }
  begin
    if x = 0 then dbd := y
             else dbd := dbd (y mod x, x)
  end; { dbd }

  function bmk (x, y: integer): integer;
  { maØiausias bendrasis  kartotinis }
  begin
    bmk := x div dbd (x, y) * y
  end; { bmk }

  function blogi_signalai (n: integer; t, l: lentele): integer;
  { apskai‡iuoja blog— signal—, kuriuos gauna imtuvas, procent… }
    var blogi, { blog— signal— skai‡ius }
        viso, sign , l_max, kart, i, j: integer;
        pas: lentele; { lentel‚, rodanti kuriais laiko momentais }
                  { atitinkamo si—stuvo signalas pasiekia imtuv… }
  begin
    { rasime Lmax }
    l_max := 0;
    for i := 1 to n do
      if l_max < l[i]
         then l_max := l[i];
    { rasime bmk(T1, T2, ... Tn) }
    kart := 1;
    for i := 1 to n do
      kart := bmk (kart, t[i]);
    { rasime kada pirmais kiekvieno si—stuvo signalas paiekia imtuv… }
    pas := l;
    { rasime kada kiekvieno si—stuvo pirmasis signalas pasiekia imtuv… }
    { nagrin‚jamame periode }
    for i := 1 to n do
      while pas[i] < l_max do
        pas[i] := pas[i] +  t[i];
     { modeliuosime kiekvien… laiko moment… periode }
    blogi := 0;
    viso := 0;
    for i := l_max to l_max + (kart-1) do
      begin
        sign := 0; { imtuv… pasiekian‡i— signal— skai‡ius momentu i }
        for j := 1 to n do
          if pas[j] = i
             then sign := sign + 1;
        if sign > 1
           then blogi := blogi + 1;
        if sign > 0
           then viso := viso + 1;
        { randame tolesnius laiko momentus kada signalai pasieks imtuv… }
        for j := 1 to n do
          if pas[j] <= i
             then pas[j] := pas[j] + t[j]
      end;
    blogi_signalai := round (blogi/viso*100)
    { tokia veiksm— tvarka nesukels perpildymo }
  end; { blogi_signalai }

  var f: text;
      k, n: integer;
      t, l: lentele;
begin
  assign (f, 'RYSYS.DAT');
  reset (f);
  readln (f, n);
  for k := 1 to n do
    readln (f, t[k], l[k]);
  close (f);
  writeln (blogi_signalai(n, t, l))
end.