记录编号 388355 评测结果 AAAAAAAAAA
题目名称 [HZOI 2015] 偏序++ 最终得分 100
用户昵称 Gravatar_Itachi 是否通过 通过
代码语言 C++ 运行时间 5.551 s
提交时间 2017-03-28 20:50:41 内存使用 191.20 MiB
显示代码纯文本
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <algorithm>
#include <bitset>
using namespace std;
char cc;inline void R_int(int &x){
	while(cc=getchar(),cc<'!');x=cc-48;
	while(cc=getchar(),cc>'!')x=x*10+cc-48;
}
const int N=40000;
int n,K,sa[N];bitset<N>f[N];
int main(){
	freopen("partial_order_plus.in","r",stdin);freopen("partial_order_plus.out","w",stdout);
	R_int(n),R_int(K);int i,x,k;
	for(i=1;i<n;i++)f[i]=f[i-1],f[i][i-1]=true;
	for(k=0;k<K;k++){
		for(i=0;i<n;i++)R_int(x),sa[x-1]=i;
		bitset<N>now;for(i=0;i<n;i++)f[sa[i]]&=now,now[sa[i]]=true;
	}
	long long ans=0;for(i=1;i<n;i++)ans+=f[i].count();printf("%lld\n",ans);
}