Atcoder Beginner Contest 139E(模拟,思维)
2024-09-03 04:42:29
#define HAVE_STRUCT_TIMESPEC
#include<bits/stdc++.h>
using namespace std;
int n;
int a[1007][1007],t[1007],p[1007];
queue<int>q[2];//每次把消去的选手扔进队列,避免无法消去的选手被频繁访问,暴力模拟会N^3复杂度,只对新的选手进行遍历大概只有N^2复杂度
int main(){
cin>>n;
for(int i=1;i<=n;++i)
for(int j=1;j<n;++j)
cin>>a[i][j];
for(int i=1;i<=n;++i)
q[0].push(i);
int now=1;
for(int day=1,tot=n*(n-1)/2;day<=n*(n-1)/2;++day){
now^=1;
while(!q[now].empty()){
int x=q[now].front();
q[now].pop();
int y=a[x][++t[x]];
if(p[y]==x){
tot--;
q[1-now].push(x);
q[1-now].push(y);
p[x]=p[y]=0;
}
else
p[x]=y;
}
if(!tot){
cout<<day<<endl;
return 0;
}
}
cout<<-1<<endl;
return 0;
}
最新文章
- kafka的log存储解析——topic的分区partition分段segment以及索引等
- win8.1中EZDML输入中文显示问号问题
- 组内Linq培训记录
- asp.net core中Microsoft.AspNet.Session的使用
- ehcache 缓存技术
- 怒刷DP之 HDU 1029
- Selenium 中使用方法小结
- 解决eclipse复制粘贴js代码卡死的问题
- oledb方式读取excel文件
- Junit 源码剖析(一)
- Lucene 4.x实践1
- BZOJ 3385: [Usaco2004 Nov]Lake Counting 数池塘
- Java实现BASE64编解码器
- 【转】height,posHeight和pixelHeight区别
- 第25篇 jQuer快速学习(上)---选择器和DOM操作
- bat如何提取文本指定行的内容
- TCP 远程执行CMD (解决粘包问题) 代码
- css3的calc()
- 5D - Rectangles
- EOJ Monthly 2019.2 (based on February Selection) F.方差