結果
| 問題 |
No.2462 七人カノン
|
| コンテスト | |
| ユーザー |
ぴぃいいいい
|
| 提出日時 | 2023-09-19 02:48:18 |
| 言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
AC
|
| 実行時間 | 276 ms / 2,000 ms |
| コード長 | 642 bytes |
| コンパイル時間 | 2,139 ms |
| コンパイル使用メモリ | 200,748 KB |
| 最終ジャッジ日時 | 2025-02-16 23:31:43 |
|
ジャッジサーバーID (参考情報) |
judge3 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 23 |
ソースコード
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,q; cin>>n>>q;
vector<tuple<int,int,int>> query(q);
vector<int> cnt(100009,0);
for(int i=0;i<q;i++){
int I,S,T; cin>>I>>S>>T;
I--;
query[i] = {I,S,T};
cnt[S]++;
cnt[T]--;
}
for(int i=0;i<100008;i++) cnt[i+1] += cnt[i];
vector<double> get_att(100009,(double)0);
for(int i=0;i<100008;i++){
get_att[i+1] += get_att[i];
if(cnt[i]>0){
get_att[i+1] += (double)1/cnt[i];
}
}
vector<double> att(n,0);
for(int i=0;i<q;i++){
auto [I,S,T] = query[i];
att[I] += get_att[T] - get_att[S];
}
for(int i=0;i<n;i++) cout<<setprecision(15)<<att[i]<<endl;
}
ぴぃいいいい