Var ar:array of integer; n,k,i,j:integer; b1:boolean; begin read(n,k); b1:=false; setlength(ar,n); n:=n-1; writeln('Enter array:'); for i:=0 to n do readln(ar[i]); for i:=0 to n-k+1 do begin; for j:=i to k+i-1 do if ar[i]=ar[j] then b1:=true else b1:=false; if b1=true then break; end; if b1=true then for i:=0 to n do begin; if ar[i]>0 then ar[i]:=ar[i]*(-1); write(ar[i]:4); end else writeln('Рішення не існує'); end.
Пример ввода: 5 //n 4 //k 2 1 1 1 1 Пример вывода: -2 -1 -1 -1 -1
// PascalABC.NET 3.1, сборка 1172 от 19.02.2016 begin var m:=ReadInteger('m=').ToString.ToSortedSet; var n:=ReadInteger('n=').ToString.ToSortedSet; if m.Intersect(n).Count>0 then Writeln('Есть одинаковые цифры') else Writeln('Нет одинаковых цифр') end.
Тестовые решения: m= 12345 n= 76840 Есть одинаковые цифры
m= 123456 n= 789087 Нет одинаковых цифр
А вот примерно так почему-то заставляют писать эту же задачу в школах:
// PascalABC.NET 3.1, сборка 1172 от 19.02.2016 var i,m,n:integer; found:boolean; sm,sn:string; begin Writeln('Введите через пробел два натуральных числа: '); Read(m,n); Str(m,sm); Str(n,sn); found:=False; for i:=1 to Length(sm) do if Pos(sm[i],sn)>0 then begin found:=True; break end; if found then Writeln('Есть одинаковые цифры') else Writeln('Нет одинаковых цифр') end.
Тестовое решение: Введите через пробел два натуральных числа: 5354353 111211 Нет одинаковых цифр
Var
ar:array of integer;
n,k,i,j:integer;
b1:boolean;
begin
read(n,k);
b1:=false;
setlength(ar,n);
n:=n-1;
writeln('Enter array:');
for i:=0 to n do
readln(ar[i]);
for i:=0 to n-k+1 do
begin;
for j:=i to k+i-1 do
if ar[i]=ar[j] then b1:=true else b1:=false;
if b1=true then
break;
end;
if b1=true then
for i:=0 to n do
begin;
if ar[i]>0 then ar[i]:=ar[i]*(-1);
write(ar[i]:4);
end
else
writeln('Рішення не існує');
end.
Пример ввода:
5 //n
4 //k
2
1
1
1
1
Пример вывода:
-2 -1 -1 -1 -1
begin
var m:=ReadInteger('m=').ToString.ToSortedSet;
var n:=ReadInteger('n=').ToString.ToSortedSet;
if m.Intersect(n).Count>0 then Writeln('Есть одинаковые цифры')
else Writeln('Нет одинаковых цифр')
end.
Тестовые решения:
m= 12345
n= 76840
Есть одинаковые цифры
m= 123456
n= 789087
Нет одинаковых цифр
А вот примерно так почему-то заставляют писать эту же задачу в школах:
// PascalABC.NET 3.1, сборка 1172 от 19.02.2016
var
i,m,n:integer;
found:boolean;
sm,sn:string;
begin
Writeln('Введите через пробел два натуральных числа: ');
Read(m,n);
Str(m,sm);
Str(n,sn);
found:=False;
for i:=1 to Length(sm) do
if Pos(sm[i],sn)>0 then begin
found:=True;
break
end;
if found then Writeln('Есть одинаковые цифры')
else Writeln('Нет одинаковых цифр')
end.
Тестовое решение:
Введите через пробел два натуральных числа:
5354353 111211
Нет одинаковых цифр