CodeForces 821A Okabe and Future Gadget Laboratory

来源:互联网 发布:记账软件破解版 编辑:程序博客网 时间:2024/05/17 23:05

题目链接:http://codeforces.com/contest/821/problem/A
题意:给你一个n*n的矩阵,问你对于矩阵里每一个不等于1的元素a[x][y]来说,是否存在s和t使得a[x][s]+a[t][y] = a[x][y],如果对于每一个都存在,那么输出yes,否则输出no
解析:由于n比较小只有50,所以直接暴力枚举就好

#include <bits/stdc++.h>using namespace std;const int inf = 0x7fffffff;const int maxn = 100;int a[maxn][maxn];int main(void){    int n;    scanf("%d",&n);    for(int i=1;i<=n;i++)    {        for(int j=1;j<=n;j++)            scanf("%d",&a[i][j]);    }    int flag = 1;    for(int i=1;i<=n;i++)    {        for(int j=1;j<=n;j++)        {            if(a[i][j]!=1)            {                int tt = 0;                for(int k=1;k<=n;k++)                {                    for(int l=1;l<=n;l++)                    {                        if(k!=j && l!=i)                        {                            if(a[i][k]+a[l][j]==a[i][j])                            {                                tt=1;                                break;                            }                        }                    }                    if(tt)                        break;                }                if(!tt)                {                    flag = 0;                    break;                }            }        }        if(!flag)            break;    }    if(flag)        puts("Yes");    else        puts("No");    return 0;}
原创粉丝点击