洛谷 P1428 小魚比可愛

2021-09-05 06:49:24 字數 2881 閱讀 7458

人比人,氣死人;魚比魚,難死魚。小魚最近參加了乙個「比可愛」比賽,比的是每只魚的可愛程度。參賽的魚被從左到右排成一排,頭都朝向左邊,然後每只魚會得到乙個整數數值,表示這只魚的可愛程度,很顯然整數越大,表示這只魚越可愛,而且任意兩隻魚的可愛程度可能一樣。由於所有的魚頭都朝向左邊,所以每只魚只能看見在它左邊的魚的可愛程度,它們心裡都在計算,在自己的眼力範圍內有多少隻魚不如自己可愛呢。請你幫這些可愛但是魚腦不夠用的小魚們計算一下。

輸入格式:

第一行輸入乙個整數n,表示魚的數目。

第二行內輸入n個整數,用空格間隔,依次表示從左到右每只小魚的可愛程度。

輸出格式:

行內輸出n個整數,用空格間隔,依次表示每只小魚眼中有多少隻魚不如自己可愛。

很簡單的題啊,不多講

#include

using

namespace std;

intmain()

;//使sum陣列為0,之後「++」不會出錯

cin>>a[0]

;//先輸入第乙個數

for(i=

1;i)for

(i=0

;i)//輸出

cout<<<

' ';

return0;

}

此題的pascal是比較簡單的解法,然而有乙個逗比管理大大的解法是這樣子的:

//為了練習一下樹轉陣列求逆序對。。。本逗比來一發麼麼噠——

var i,j,k,l,m,n:longint;

a,b,c,d:array[

0..100000

] of longint;

procedure swap

(var x,y:longint)

; var z:longint;

begin

z:=x;x:

=y;y:

=z; end;

function lowbit

(x:longint)

:longint;

begin

exit

(x and

(-x));

end;

procedure add

(x:longint)

; begin

if x=

0 then exit;

while x<=n do

begin

inc(c[x]);

inc(x,

lowbit

(x))

; end;

end;

function sum

(x:longint)

:longint;

begin

sum:=0

;while x>0do

begin

inc(sum,c[x]);

dec(x,

lowbit

(x))

; end;

end;

function max

(x,y:longint)

:longint;

begin

if x>y then max:

=x else max:

=y; end;

procedure sort

(l,r:longint)

; var i,j,x,y:longint;

begin

i:=l;j:

=r;x:

=a[(l+r) div 2];

repeat

while a[i]

>x do

inc(i)

;while a[j]

dec(j)

;if i<=j then

begin

swap

(a[i]

,a[j]);

swap

(b[i]

,b[j]);

inc(i)

;dec

(j);

end;

until i>j;

if i(i,r)

;if l(l,j)

; end;

begin

readln

(n);

for i:

=1 to n do

read

(a[i]);

readln;

for i:

=1 to n do b[i]

:=i;

sort(1

,n);m:=0

; a[0]

:=-maxlongint;

for i:

=1 to n do

begin

if a[i]

<

>a[i-

1] then inc

(m);

d[b[i]]:

=m; end;

fillchar

(c,sizeof

(c),0)

;for i:

=1 to n do

begin

add(d[i]

);l:

=sum

(d[i]);

if i(i-sum

(d[i]),

' ')

else

writeln

(i-sum

(d[i]))

; end;

end.

···

洛谷 P1428 小魚比可愛

p1428 小魚比可愛 題目提供者yeszy 標籤 樹狀陣列 難度入門難度 題目描述 人比人,氣死人 魚比魚,難死魚。小魚最近參加了乙個 比可愛 比賽,比的是每只魚的可愛程度。參賽的魚被從左到右排成一排,頭都朝向左邊,然後每只魚會得到乙個整數數值,表示這只魚的可愛程度,很顯然整數越大,表示這只魚越可...

洛谷P1428 小魚比可愛

人比人,氣死人 魚比魚,難死魚。小魚最近參加了乙個 比可愛 比賽,比的是每只魚的可愛程度。參賽的魚被從左到右排成一排,頭都朝向左邊,然後每只魚會得到乙個整數數值,表示這只魚的可愛程度,很顯然整數越大,表示這只魚越可愛,而且任意兩隻魚的可愛程度可能一樣。由於所有的魚頭都朝向左邊,所以每只魚只能看見在它...

洛谷P1428小魚比可愛

我就是喜歡分塊 我的題庫 首先,先來放一下題面佔空間 人比人,氣死人 魚比魚,難死魚。小魚最近參加了乙個 比可愛 比賽,比的是每只魚的可愛程度。參賽的魚被從左到右排成一排,頭都朝向左邊,然後每只魚會得到乙個整數數值,表示這只魚的可愛程度,很顯然整數越大,表示這只魚越可愛,而且任意兩隻魚的可愛程度可能...