【問題背景】
zhx 給他的妹子們排序。
【問題描述】
zhx 有 n 個妹子, 他對第 i 個妹子的好感度為ai,且所有 ai兩兩不相等。 現
在 n 個妹子隨意站成一排, 他要將她們根據好感度從小到大排序。 他使用的是
氣泡排序演算法(詳見下)。如果排序過程中好感度為ai的妹子和aj的妹子發生了交換, 那麼她們之間會發生一場口角。
現在 zhx 想知道, 給定妹子的初始排列, 在排序完成後, 最多存在多少個妹
子, 她們任意兩人之間沒發生過口角。
【輸入格式】
第一行兩個整數 n, 表示妹子數量。
接下來一行 n 個整數ai,表示初始第i個妹子的好感度.
【輸出格式】
一行乙個整數, 表示最多滿足要求的妹子的個數。
【樣例輸入】
33 1 2
【樣例輸出】
2【樣例解釋】
。 對於100%的資料, 1 ≤ n ≤ 100000,0≤ai<n.
分析:要找到這個集合,首先要搞清楚這個集合中的元素滿足什麼性質.氣泡排序和逆序對是相關的,每一對逆序對的兩個數都會被交換一次.那麼最後的集合中兩兩肯定都是順序對,即i
#include #include#include
#include
#include
#include
using
namespace
std;
int n, a[100010], s[100010
], cur;
int erfen(int
x)
else
l = mid + 1
; }
return
ans;
}int
main()
}printf(
"%d\n
", cur);
return0;
}
noip模擬賽 密碼
表示沒看懂演算法3 問題描述 有壓迫,就有反抗。mored的寵物在法庭的幫助下終於反抗了。作為乙隻聰明的寵物,他打算把魔法使mored的魔法書盜去,奪取mored的魔法能力。但mored怎麼會讓自己的魔法書輕易地被盜取?mored在魔法書上設定了乙個密碼鎖,密碼鎖上有乙個問題。施以斯臥鋪魔法吧,你有...
NOIP模擬賽 老師
題目描述 一座有n層的教學樓裡有一些學生,第i 0 i n 層有studentsi個學生。你被給定了乙個數k,如果第i層有x個學生,那麼這一層需要 x k 個老師。你可以調整每個學生的樓層,但是每個學生至多只能調整一層,就是說第i層的學生只能去第i 1層 如果有的話 第i層 第i 1層 如果i 1 ...
NOIP模擬賽 分錢
題目描述 兩個人在街上撿到了一些錢,這些錢共有n張,他們等了很久也沒有等來失主,於是決定把錢平分。但錢可能無法平分。他們先把能夠平分的錢盡量先平分了,使得剩下不能平分的錢盡量少。這些不能平分的錢怎麼辦呢他?他們決定拿去賭場裡面賭一把。他們運氣太好了,那些不能平分的錢變成了雙倍,於是他們就把那個錢分了...