思路: 掃瞄線思想, 左端點排序 維護sum來統計 當前通過 sum題的有多少人 [l,r]都為貢獻1 r+1 才消去貢獻 (記右端點要r+1才能合理消去 類似差分)
用cnt 陣列存 過cnt[i] 題的人 最後將cnt陣列 字尾和 變為 cnt[i] 至少通過i題的人 然後模擬即可
把排名轉換成過題的人數即可
1 #include2view codeusing
namespace
std;
3const
int maxn=1e5+10;4
const
int mod=1e9+7;5
#define ll long long
6#define pi pair7
#define fi first
8#define sc second
9#define pb push_back
10 pi a[maxn*2
];11
intcnt[maxn];
1213
14int
main()15;
26 a[++tot]=;27}
28 sort(a+1,a+1+tot);
29int sum=1;30
for(int i=2;i<=tot;i++)
3136
37int au=(n+10-1)/10,ag=(n+4-1)/4,cu=(n+2-1)/2;38
int x=-1,y=-1,z=-1;39
for(int i=m;i>=0;i--)
4046 x=max(x,1
);47 y=max(y,1
);48 z=max(z,1
);49
50 cout""
;515253
5455
5657
5859 }
牛牛的k合因子數
題目描述 合數是指自然數中除了能被1和本身整除外,還能被其他數 0除外 整除的數。牛牛最近在研究 k合因子數 所謂 k合數 是指乙個數的所有因子中,是合數的因子共有k個。例如20的因子有1,2,4,5,10,20,其中4,10,20為合數,它有3個合數因子,就稱20是乙個 3合因子數 牛牛想要知道1...
牛牛的k合因子數
合數是指自然數中除了能被1和本身整除外,還能被其他數 0除外 整除的數。牛牛最近在研究 k合因子數 所謂 k合數 是指乙個數的所有因子中,是合數的因子共有k個。例如20的因子有1,2,4,5,10,20,其中4,10,20為合數,它有3個合數因子,就稱20是乙個 3合因子數 牛牛想要知道1 n中給定...
牛牛與陣列
牛牛喜歡這樣的陣列 1 長度為n 2 每乙個數都在1到k之間 3 對於任意連續的兩個數a,b,a b 與 a b 0 兩個條件至少成立乙個 請問一共有多少滿足條件的陣列,對1e9 7取模 輸入兩個整數n,k 1 n 10 1 k 100000輸出乙個整數示例1 複製2 2 2 2複製3 3示例2 複...