思路:见代码

#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
#define Maxn 110
using namespace std;
int a[Maxn][Maxn],b[Maxn][Maxn],n,k;
bool equel()
{
int i,j;
for(i=;i<=n;i++){
for(j=;j<=n;j++){
if(a[i][j]!=b[i][j])
return false;
}
}
return true;
}
bool symmic()
{
int i,j,cnt=;
for(i=;i<=n;i++){
for(j=;j<i;j++){
if(a[i][j]!=b[j][i]&&i!=j)
return false;
if((a[i][j]!=b[i][j]||a[j][i]!=b[j][i])&&b[j][i]!=b[i][j]){
cnt++;
}
}
}
if(cnt>) return false;
return true;
}
bool bb()
{
int i,j;
for(i=;i<=n;i++){
for(j=;j<=n;j++){
if(b[i][j]!=b[j][i])
return false;
}
}
return true;
}
bool aa()
{
int i,j;
for(i=;i<=n;i++){
for(j=;j<=n;j++){
if(a[i][j]!=a[j][i])
return false;
}
}
return true;
}
int getnum()
{
int i,j,num=;
for(i=;i<=n;i++){
for(j=;j<=n;j++){
if(a[i][j]!=b[i][j])
num++;
}
}
return num;
}
int main()
{
int t,i,j,Ca=;
scanf("%d",&t);
while(t--){
scanf("%d%d",&n,&k);
for(i=;i<=n;i++){
for(j=;j<=n;j++)
scanf("%d",&a[i][j]);
}
for(i=;i<=n;i++){
for(j=;j<=n;j++)
scanf("%d",&b[i][j]);
}
printf("Case %d: ",++Ca);
if(equel()){
printf("0\n");
continue;
}
if(bb()){
printf("-1\n");
continue;
}
int ans;
ans=getnum();
if(symmic()){
if(k<=&&n<=){
printf("-1\n");
continue;
}
if(k==)
printf("%d\n",ans+);
else
printf("%d\n",ans+);
continue;
}
printf("%d\n",ans);
}
return ;
}

uva 12284 直接判断的更多相关文章

  1. UVA 12284 Digital Matrix

    思路:这个分清楚情况就很好做了. 注意一点当A的转置等于B的时候(对角线除外),记录A的下三角(或上三角)有cnt个的数与B不同,如果cnt>1则 不需要额外的步数就可以了,否则当k==2时结果 ...

  2. UVa 247 - Calling Circles(Floyd求有向图的传递闭包)

    链接: https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem& ...

  3. UVA.839 Not so Mobile ( 二叉树 DFS)

    UVA.839 Not so Mobile ( 二叉树 DFS) 题意分析 给出一份天平,判断天平是否平衡. 一开始使用的是保存每个节点,节点存储着两边的质量和距离,但是一直是Runtime erro ...

  4. uva 1354 Mobile Computing ——yhx

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAABGcAAANuCAYAAAC7f2QuAAAgAElEQVR4nOy9XUhjWbo3vu72RRgkF5

  5. UVA 10564 Paths through the Hourglass[DP 打印]

    UVA - 10564 Paths through the Hourglass 题意: 要求从第一层走到最下面一层,只能往左下或右下走 问有多少条路径之和刚好等于S? 如果有的话,输出字典序最小的路径 ...

  6. UVA 11404 Palindromic Subsequence[DP LCS 打印]

    UVA - 11404 Palindromic Subsequence 题意:一个字符串,删去0个或多个字符,输出字典序最小且最长的回文字符串 不要求路径区间DP都可以做 然而要字典序最小 倒过来求L ...

  7. UVA&&POJ离散概率与数学期望入门练习[4]

    POJ3869 Headshot 题意:给出左轮手枪的子弹序列,打了一枪没子弹,要使下一枪也没子弹概率最大应该rotate还是shoot 条件概率,|00|/(|00|+|01|)和|0|/n谁大的问 ...

  8. UVA计数方法练习[3]

    UVA - 11538 Chess Queen 题意:n*m放置两个互相攻击的后的方案数 分开讨论行 列 两条对角线 一个求和式 可以化简后计算 // // main.cpp // uva11538 ...

  9. UVA数学入门训练Round1[6]

    UVA - 11388 GCD LCM 题意:输入g和l,找到a和b,gcd(a,b)=g,lacm(a,b)=l,a<b且a最小 g不能整除l时无解,否则一定g,l最小 #include &l ...

随机推荐

  1. sql 分组后 组内排名

    语法:ROW_NUMBER() OVER(PARTITION BY COLUMN ORDER BY COLUMN) 简单的说row_number()从1开始,为每一条分组记录返回一个数字,这里的ROW ...

  2. python 自定义函数

    200 ? "200px" : this.width)!important;} --> 介绍 在Python中,定义一个函数要使用def语句,依次写出函数名.括号.括号中的参 ...

  3. android ListView中的Item有Button时候点击异常处理

    1.当ListView中有Button的时候往往会遇到很多问题,比较常见的一个问题是: 假设:在ListView中有N个Item当点击其中某个Item中的Button的时候,需要改变当前Button的 ...

  4. [转]ViewPager onPageChangeListener总结

    android ViewPager滑动事件讲解 首先ViewPager在处理滑动事件的时候要用到OnPageChangeListener OnPageChangeListener这个接口需要实现三个方 ...

  5. counting sort 计数排序

    //counting sort 计数排序 //参考算法导论8.2节 #include<cstdio> #include<cstring> #include<algorit ...

  6. Codeforces 427 D. Match &amp; Catch

    后缀数组.... 在两个串中唯一出现的最小公共子串 D. Match & Catch time limit per test 1 second memory limit per test 51 ...

  7. SpringAOP 基础具体解释

    Spring AOP对于刚開始学习spring的同学来说有点难以理解.我刚工作的时候都没怎么理解,如今略微理解了一点,所以在这里我将用嘴简单的样例,最通俗易懂的话语来说出我的理解,可能因为我对Spri ...

  8. C# RSA和Java RSA互通

    今天调查了C# RSA和Java RSA,网上很多人说,C#加密或者java加密 ,Java不能解密或者C#不能解密 但是我尝试了一下,发现是可以的,下面就是我尝试的代码,如果您有什么问题,我想看看, ...

  9. 0c-38-ARC快速入门

    2.ARC快速使用 int main(){ Student *s = [[Student alloc] init]; return 0; } 只需要写一行代码,编译器会在合适的位置释放学生对象,程序员 ...

  10. Oracle中关于清除数据和释放表空间

    一.表的重命名 flashback table test2 to before drop rename to test3;--[to test3]将表重命名 drop table test3 purg ...