Thứ Tư, 27 tháng 4, 2022

MUSIC PASCAL

var n,c:longint;
      a,b,x: array[1..100] of longint;
s:array[1..10000] of longint;
 
procedure enter;
var i:longint;
begin
    read(n);
    for i:=1 to n do read(s[i]);
    read(c);
    for i:=1 to c do read(a[i]);
end;
 
procedure bbsort_a;
var i,j,t:longint;
begin
    for i:=1 to c-1 do
        for j:=1 to c-i do
        begin
            if a[j]<a[j+1] then
            begin
                t:=a[j];
                a[j]:=a[j+1];
                a[j+1]:=t;
            end;
        end;
end;
procedure bbsort_b;
var i,j,t:longint;
begin
    for i:=1 to c-1 do
        for j:=1 to c-i do
        begin
            if b[j]<b[j+1] then
            begin
                t:=b[j];
                b[j]:=b[j+1];
                b[j+1]:=t;
            end;
        end;
end;
 
function ss:boolean;
var i,k:longint;
begin
    k:=a[1]-b[1];
    for i:=2 to c do
        if a[i]-b[i]<>k then
            exit(false);
    exit(true);
end;
 
procedure xuli;
var i,d,j:longint;
begin
    bbsort_a;
    d:=0;
    for i:=1 to n-c+1 do
    begin
        for j:=1 to c do b[j]:=s[i+j-1];
        bbsort_b;
        if ss then
        begin
            inc(d);
            x[d]:=i;
        end;
       end;
    writeln(d);
    if d>0 then
        for i:=1 to d do writeln(x[i]);
end;
 
begin
    assign(input, 'music.inp');reset(input);
    assign(output, 'music.out');rewrite(output);
    enter;
    xuli;
end.

Không có nhận xét nào:

Đăng nhận xét

Lưu ý: Chỉ thành viên của blog này mới được đăng nhận xét.