Объяснение:
Синтаксис могу плохо помнить:
#include <iostream>
using namespace std;
int main(void){
int x,y,i,N;
cin>>N;
for(i=0;i<N;i++){
cin>>x>>y;
if(x==y) cout<<"2";
else cout<<"1";
}
return 0;
}
Выигрышная стратегия-постоянно уравнивать большее число к меньшему, так игра в конечном итоге сведётся для оппонента к проигрышной позиции (1,1) при оптимальной игре каждого игрока. Так, получается что позиции с равными числами заведомо проигрышные, а с разными-выигрышные для игрока, делающего ход.
uses crt;
var b:array [1..10] of integer; i,s1,s2:integer;
begin
clrscr;
for i:=1 to 10 do
begin
Randomize;
b[i]:=random(100);
end;
s1:=0; s2:=0;
if b[i]>20 then s1:=s1+b[i]; if s1>100 then writeln ('a)verno')else writeln ('a)ne verno');
if b[i]<50 then s2:=s2+b[i]; if s2 mod 2=0 then writeln ('á)verno')else writeln ('b)ne verno');
end.