【链接】 我是链接,点我呀:)

【题意】

在这里输入题意

【题解】

注意这k个序列每个都是排列。
如果在每个序列中都满足y出现在x之后的话。
那么我们从x连一条有向边至y
(有一个序列不满足就不连
(这就表明最后的序列中x可以紧接着y

最后显然会形成一个有向无环图。

在这个图上求最长链就好了。

可以在做拓扑排序的时候边做这个dp.

【代码】

#include <bits/stdc++.h>
#define LL long long
#define rep1(i,a,b) for (int i = a;i <= b;i++)
#define rep2(i,a,b) for (int i = a;i >= b;i--)
#define all(x) x.begin(),x.end()
#define pb push_back
#define lson l,mid,rt<<1
#define rson mid+1,r,rt<<1|1
using namespace std; const double pi = acos(-1);
const int dx[4] = {0,0,1,-1};
const int dy[4] = {1,-1,0,0};
const int N = 1000; int n,k,a[N+10],ru[N+10],f[N+10];
bool bo[N+10][N+10];
queue<int> dl; int main(){
#ifdef LOCAL_DEFINE
freopen("rush_in.txt", "r", stdin);
#endif
ios::sync_with_stdio(0),cin.tie(0);
cin >> n >> k;
memset(bo,true,sizeof bo);
for (int i = 1;i <= n;i++) ru[i] = n-1;
for (int i = 1;i <= k;i++){
for (int i = 1;i <= n;i++) cin >> a[i];
for (int i = 1;i <= n;i++){
for (int j = 1;j <= i-1;j++){
if (bo[a[i]][a[j]]==true) {
ru[a[j]]--;
}
bo[a[i]][a[j]] = false;
}
}
} for (int i = 1;i <= n;i++)
if (ru[i]==0){
dl.push(i);
f[i] = 1;
ru[i]=-1;
}
while (!dl.empty()){
int x = dl.front();dl.pop();
for (int i = 1;i <= n;i++)
if (i!=x && bo[x][i]){
ru[i]--;
f[i] = max(f[i],f[x]+1);
if (ru[i]==0){
ru[i] = -1;
dl.push(i);
}
}
}
int ans = 0;
for (int i = 1;i <= n;i++) ans = max(ans,f[i]);
cout<<ans<<endl;
return 0;
}

最新文章

  1. [Nginx笔记]关于线上环境CLOSE_WAIT和TIME_WAIT过高
  2. TODO:MongoDB MySQL数据库备份
  3. 记录对依赖注入的小小理解和autofac的简单封装
  4. phpnow修改默认站点根目录的方法
  5. PHP中IP地址与整型数字互相转换详解
  6. centos7 使用 omnibus包安装方式,安装 gitlab7.4
  7. 【转】SQL SERVER 开窗函数简介
  8. ArcGIS For JavaScript API 默认参数
  9. 【Opencv 小工具】鼠标选区信息获取
  10. log4net 动态设定日志文件名
  11. QT多线程笔记
  12. 从ulimit命令看socket的限制
  13. LFM 隐语义模型
  14. C语言运算符表(优先级)
  15. Hadoop化繁为简-从安装Linux到搭建集群环境
  16. C:\Program Files\Java\jdk1.7.0_79\bin\java.exe&#39;&#39; finished with non-zero exit value 1
  17. 记录下在阿里云linux上安装与配置Mysql
  18. 在linux上添加硬盘
  19. ORM的相关操作
  20. mapreduce深入剖析5大视频

热门文章

  1. uva 10003 Cutting Sticks 【区间dp】
  2. ORM进阶之Hibernate中对象的三大状态解析
  3. 9patch生成图片
  4. openssl之EVP系列之6---EVP_Encrypt系列函数编程架构及样例
  5. Linux操作系统下Oracle主要监控工具介绍
  6. TP5异常处理
  7. C#学习小记
  8. HD-ACM算法专攻系列(17)——find your present (2)
  9. MVC bundle配置文件模板
  10. Js radio