QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#430186 | #8780. Training, Round 2 | ucup-team3555 | WA | 1ms | 4108kb | C++14 | 812b | 2024-06-03 15:44:19 | 2024-06-03 15:44:19 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=5e3+3;
int n,ax[N],bx[N],ay[N],by[N];
set<int>S[N];
bool vis[N][N];
int main()
{
cin>>n;int kx,ky,mx=0;cin>>kx>>ky;S[0].insert(0);vis[0][0]=1;
for(int i=1;i<=n;i++)cin>>ax[i]>>bx[i]>>ay[i]>>by[i];
for(int i=1;i<=n;i++)ax[i]-=kx,bx[i]-=kx,ay[i]-=ky,by[i]-=ky;
for(int t=1;t<=n;t++)for(int i=min(ay[t],t);i>=max(ax[t],0);i--)
{
auto tl=S[i].lower_bound(ay[t]),tr=S[i].upper_bound(by[t]);
vector<int>ve;
for(auto it=tl;it!=tr;it++)
{
int x=*it;
if(!vis[i+1][x])vis[i+1][x]=1,S[i+1].insert(x);
if(!vis[i][x+1])vis[i][x+1]=1,ve.push_back(x+1);
}
S[i].erase(tl,tr);
for(int x:ve)S[i].insert(x);
}
for(int i=0;i<=n;i++)for(int j=0;j<=n;j++)if(vis[i][j])mx=max(mx,i+j);
cout<<mx;
}
詳細信息
Test #1:
score: 0
Wrong Answer
time: 1ms
memory: 4108kb
input:
3 0 0 0 1 0 1 1 1 0 1 1 1 1 1
output:
1
result:
wrong answer 1st lines differ - expected: '3', found: '1'