好吧……是时候补一下题解了
原题![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/b410fa7b46ef76dd799955f844940e9b.png)
题目大意
给出n只牛,k次排序,如果有一只牛一直比另外一只牛更前算作一对,输出一共有多少对。
题目分析
水题(数据规模小),一开始初始化全部都可以,然后一个个删去就行(k和n反了……好险样例给的k和n不一样)
代码
#include<cstdio>
#include<cstring>
bool map[25][25];
int line[25];
int main()
{
int n,k,ans = 0;
memset(map,1,sizeof(map));
scanf("%d%d",&k,&n);
for (int i = 0;i < k;i++)
{
for (int j = 0;j < n;j++)
{
scanf("%d",line + j);
for (int kk = 0;kk <= j;kk++)
{
map[line[kk]][line[j]] = false;
}
}
}
for (int i = 1;i <= n;++i)
for (int j = 1;j <= n;++j)
{
if (map[i][j]) ++ans;
}
printf("%d",ans);
return 0;
}