Một hoán vị P của dãy số 1,2,3,…,n là một cách sắp xếp các số ấy theo một trật tự nào đó.Ví dụ với n=9 thì P=(5, 9, 1, 8, 2, 6, 4, 7, 3) là một hoán v

By Genesis

Một hoán vị P của dãy số 1,2,3,…,n là một cách sắp xếp các số ấy theo một trật tự nào đó.Ví dụ với n=9 thì P=(5, 9, 1, 8, 2, 6, 4, 7, 3) là một hoán vị.
Cho một hoán vị P=(a1, a2, a3,…, an) của dãy 1,2,…,n. Khi đó người ta xây dựng dãy nghịch thế T= (t1, t2, t3…,tn) như sau trong đó ti bằng số các phần tử của hoán vị P nằm bên trái i và lớn hơn i.
Ví dụ : P = (5, 9, 1, 8, 2, 6, 4, 7, 3) thì T = (2, 3, 6, 4, 0, 2, 2, 1, 0)
Giải thích:
– t1=2 vì trong hoán vị P, số 1 có 2 giá trị bên trái nó mà lớn hơn nó là 5 và 9;
– t2=3 vì trong hoán vị P, số 2 có 3 giá trị bên trái nó mà lớn hơn nó là 5,9,8;
– ….
Lập trình thực hiện yêu cầu sau:
Nhập vào từ bàn phím một số n và một hoán vị của 1,2,…,n. Tìm và in ra màn hình nghịch thế của hoán vị đó.
Giúp mik với !!! Mik đang cần gấp. Thank you!!!

0 bình luận về “Một hoán vị P của dãy số 1,2,3,…,n là một cách sắp xếp các số ấy theo một trật tự nào đó.Ví dụ với n=9 thì P=(5, 9, 1, 8, 2, 6, 4, 7, 3) là một hoán v”

  1. uses crt;
    var i,n,dem,j,x:longint; a:array[0..1000000]of longint;
    begin
    clrscr;
       write(‘N=’);readln(n);
       for i:=1 to n do
          begin
             write(‘a[‘,i,’]=’);readln(a[i]);
          end;
       for i:=1 to n do
          begin
             j:=1; dem:=0;
             while a[j]<>i do inc(j);
             for x:=1 to j do if a[x]>a[j] then inc(dem);
             writeln(dem);
          end;
    readln
    end.

    Trả lời

Viết một bình luận