結果
| 問題 |
No.2687 所により大雨
|
| コンテスト | |
| ユーザー |
沙耶花
|
| 提出日時 | 2024-03-20 22:13:39 |
| 言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
TLE
(最新)
AC
(最初)
|
| 実行時間 | - |
| コード長 | 1,621 bytes |
| コンパイル時間 | 4,475 ms |
| コンパイル使用メモリ | 255,932 KB |
| 最終ジャッジ日時 | 2025-02-20 09:19:42 |
|
ジャッジサーバーID (参考情報) |
judge2 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 15 TLE * 10 |
ソースコード
#include <stdio.h>
#include <atcoder/all>
#include <bits/stdc++.h>
using namespace std;
using namespace atcoder;
using mint = modint998244353;
#define rep(i,n) for (int i = 0; i < (n); ++i)
#define Inf32 1000000001
#define Inf64 4000000000000000001
using P = pair<long long,long long>;
int main(){
ios::sync_with_stdio(false);
std::cin.tie(nullptr);
int N,M;
cin>>N>>M;
vector<P> i0(N),i1(M);
rep(i,N){
cin>>i0[i].first>>i0[i].second;
rep(j,4){
i0[i].first -= Inf32;
i0[i].second -= Inf32;
}
i0[i].first *= 2;
i0[i].second *= 2;
}
rep(i,M){
cin>>i1[i].first>>i1[i].second;
rep(j,4){
i1[i].first += Inf32;
i1[i].second += Inf32;
}
i1[i].first *= 2;
i1[i].second *= 2;
}
sort(i0.begin(),i0.end());
sort(i1.begin(),i1.end());
int K;
cin>>K;
vector<long long> p(K);
rep(i,K){
cin>>p[i];
p[i] *= 2;
}
rep(i,i0.size()){
if(i>=1 && i0[i].first <= i0[i-1].second){
rep(j,K){
if(j!=0)cout<<' ';
cout<<1;
}
cout<<endl;
return 0;
}
}
rep(i,i1.size()){
if(i>=1 && i1[i].first <= i1[i-1].second){
rep(j,K){
if(j!=0)cout<<' ';
cout<<1;
}
cout<<endl;
return 0;
}
}
vector<int> ans(K+1);
rep(i,N){
rep(j,M){
long long A = (i0[i].first + i1[j].first)/2;
long long B = (i0[i].second + i1[j].second)/2;
if(A>B)swap(A,B);
int d;
d = distance(p.begin(),lower_bound(p.begin(),p.end(),A));
ans[d]++;
d = distance(p.begin(),upper_bound(p.begin(),p.end(),B));
ans[d]--;
}
}
rep(i,K){
ans[i+1] += ans[i];
if(i!=0)cout<<' ';
if(ans[i]>0)cout<<1;
else cout<<0;
}
cout<<endl;
return 0;
}
沙耶花