Несмотря на длинное условие, эта задача совсем не сложная. Очевидно, что здесь речь идет о двух системах счисления, причем основание одной из систем в два раза больше, чем основание другой. По записи выражений (163*11):5+391 и (454*15-26):5+2633 можно предположить, что в первом случае основание меньше, а во втором - больше. Пусть x - основание меньшей системы счисления, тогда второе основание будет 2x. Переведем данные выражения в десятичную систему счисления по известному правилу: 1) ((1*(2x)^2+6*(2x)+3)*(1*2x+1)):5+(3*(2x)^2+9*2x+1)= ((4*x^2+12*x+3)*(2*x+1)):5+(12*x^2+18*x+1) 2) ((4*x^2+5*x+4)*(1*x+5)-(2*x+6)):5+(2*x^3+6*x^2+3*x+3)= ((4*x^2+5*x+4)*(x+5)-(2*x+6)):5+(2*x^3+6*x^2+3*x+3) После раскрытия скобок и приведения подобных, с учетом того, что числа в выражениях должны быть равны, получим: 8*x^3+88*x^2+108*x+8 = 14*x^3+55*x^2+42*x+29 т.е. 6*x^3-33*x^2-66*x+21=0 Очевидно, что нас интересуют только целочисленные положительные решения. Ещё раз посмотрим на выражение (454*15-26):5+2633 Из него видно, что основание системы счисления должно быть не меньше 7. Подставим 7 в уравнение, и! сразу обнаруживаем, что это и есть подходящее нам решение. Таким образом, в "десятке" одного было 7 человек, а в "десятке" другого - 14. Общее количество "шпиёнов" у каждого = 7820
procedure push(var ar:ty); var i,c:integer; begin c:=ar[n]; for i:=n downto 2 do ar[i]:=ar[i-1]; ar[1]:=c; end;
begin randomize; writeln('Enter K:'); readln(k); writeln('First array:'); for i:=1 to n do begin; ar[i]:=random(10); write(ar[i]:4); end; for i:=1 to k do push(ar); writeln; writeln('Final array:'); for i:=1 to n do write(ar[i]:4); end. 2)var a,i,b,r,n:integer; s,se:string;
procedure preob(var a,b,n:integer; var se:string); begin repeat b:=a mod n; a:=a div n; str(b,se); s+=se; until (a<=n-1); end;
begin readln(a); readln(n); preob(a,b,n,se); str(a,se); s+=se; for i:=1 to length(s) div 2 do begin; se:=s[i]; s[i]:=s[length(s)-i+1]; s[length(s)-i+1]:=se[1]; end; val(s,r,a); write(r); end.
1) ((1*(2x)^2+6*(2x)+3)*(1*2x+1)):5+(3*(2x)^2+9*2x+1)=
((4*x^2+12*x+3)*(2*x+1)):5+(12*x^2+18*x+1)
2) ((4*x^2+5*x+4)*(1*x+5)-(2*x+6)):5+(2*x^3+6*x^2+3*x+3)=
((4*x^2+5*x+4)*(x+5)-(2*x+6)):5+(2*x^3+6*x^2+3*x+3)
После раскрытия скобок и приведения подобных, с учетом того, что числа в выражениях должны быть равны, получим:
8*x^3+88*x^2+108*x+8 = 14*x^3+55*x^2+42*x+29
т.е. 6*x^3-33*x^2-66*x+21=0
Очевидно, что нас интересуют только целочисленные положительные решения.
Ещё раз посмотрим на выражение (454*15-26):5+2633
Из него видно, что основание системы счисления должно быть не меньше 7.
Подставим 7 в уравнение, и! сразу обнаруживаем, что это и есть подходящее нам решение.
Таким образом, в "десятке" одного было 7 человек, а в "десятке" другого - 14.
Общее количество "шпиёнов" у каждого = 7820