結果

問題 No.59 鉄道の旅
ユーザー btk
提出日時 2015-06-16 23:19:06
言語 C++11
(gcc 13.3.0)
結果
TLE  
実行時間 -
コード長 541 bytes
コンパイル時間 412 ms
コンパイル使用メモリ 54,868 KB
実行使用メモリ 8,576 KB
最終ジャッジ日時 2024-12-24 20:38:44
合計ジャッジ時間 25,184 ms
ジャッジサーバーID
(参考情報)
judge4 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 8 TLE * 4
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

#include<iostream>
#define M 1000000
int bit[M + 1];
int sum(int i){
i = M - i;
int s = 0;
while (i > 0){
s += bit[i];
i -= i&-i;
}
return s;
}
int get(int i){
return (i == M) ? sum(i) : sum(i) - sum(i + 1);
}
void add(int i,int x){
i = M - i;
while (i <= M){
bit[i]+=x;
i += i&-i;
}
}
using namespace std;
int main(){
int N, K, W;
cin >> N >> K;
for (int i = 0; i < N; i++){
cin >> W;
if (W > 0){
if (sum(W) < K)add(W,1);
}
else{
if (get(-W) > 0)add(-W, -1);
}
}
cout << sum(1) << endl;
return 0;
}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0