首页 > 其他分享 >CF 1360E-Polygon,1300,思维题

CF 1360E-Polygon,1300,思维题

时间:2023-04-18 19:36:24浏览次数:55  
标签:1300 Polygon int cin CF 1360E

CF 1360E-Polygon
如果一个 1 不是在最右边或最下边,则一定有一个 1 在他的紧邻着的下边或右边,否则不合法。
太妙了。

#include <iostream>

using namespace std;

const int N = 1e2 + 10;

int T, n;
char a[N][N];

int main()
{
    cin >> T;
    while (T -- )
    {
        cin >> n;
        
        for (int i = 1; i <= n; i ++ )
        {
            for (int j = 1; j <= n; j ++ )
            {
                cin >> 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')
                {
                    if (i == n || j == n) continue;
                    if (a[i + 1][j] == '1' || a[i][j + 1] == '1') continue;
                    flag = 0;
                }
            }
        }
        
        if (flag == 1) cout << "YES\n";
        else cout << "NO\n";
    }
    
    return 0;
}   

标签:1300,Polygon,int,cin,CF,1360E
From: https://www.cnblogs.com/bzdydscjgw/p/17330799.html

相关文章

  • CF449D Jzzhu and Numbers
    CF449DJzzhuandNumbers黄金定律:给定序列求答案,但答案与序列顺序无关的题目,要么考虑把序列转权值序列,要么对序列排序。二进制题按大小排序看起来就没啥用,那就转成权值序列。即,设\(c(i)\)表示\(i\)在\(a\)中的出现次数。同时设\(V\)为\(a\)的值域。然后直接算发现不......
  • 十五天精通WCF——终结篇 那些你需要注意的坑
         终于一路走来,到了本系列的最后一篇了,这一篇也没什么好说的,整体知识框架已经在前面的系列文章中讲完了,wcf的配置众多,如果不加一些指定配置,你可能会遇到一些灾难性的后果,快来一睹为快吧。 一:第一个大坑【数据传输量】我们使用wcf的目的,就是用来进行分......
  • CF题解
    D.GuessthePermutation2000逆序性质二分https://codeforces.com/contest/1589/problem/D题解:首先我们可以二分查找i的位置:当1->x逆序对>0,则在i右,否则在左,log(n)次询问。找到i的位置后,我们发现逆序对有如下性质,i->j-1的数量和i+1->j-1的数量差为j-1-i,故我们可以询问i+1->n......
  • CF 476B Dreamoon and WiFi
    DreamoonandWiFi一个简答的组合数学题。开始想弄一个很妙的做法,但是我理解不了,或者说理解困难,半天没搞出来,然后试着还是用朴素好想的做法做吧,结果马上做出来了。选择朴素的做法时还是有个地方想不清楚,分类讨论+举例一下子清楚了。......
  • CF1646E Power Board 题解
    题目链接:https://codeforces.com/contest/1646/problem/E题目大意:有一个\(n\timesm\)的矩阵,其中第\(i\)行第\(j\)列的格子中的数字是\(i^j\)。问:矩阵中存在多少个不同的数?解题思路:可以很明显地发现,第\(1\)行的数字全部都是\(1\),而且在其它行不会出现数值为\(1\)......
  • CF1728D
    博弈论dp模板题首先我们可以先确定dp状态dp[round][L][R][0/1]表示第round轮,现在字符串为[L~R],上一轮的人取了左边还是右边然后发现round是可以由字符串L~R确定而来的,因为每一轮只删除一个数,因此可以优化round这维我们令dp[L][R][0/1]=1为 Alice赢,dp[L][R][0/1]=0为平局,dp[......
  • CF题解
    D.ABGraph2000构造https://codeforces.com/problemset/problem/1481/D题解:由于只有两种边,我们可以枚举较小结构的特性并循环来构造整体解。对于任意两个点,[u->v,v->u]只有4种情况,对于[1,1],[0,0]直接得解,可以循环这个环来构造回文,否则[1,0],[0,1],注意到当所需回文为odd长时,......
  • CF1816F Xor Counting - dp - 分治 -
    题目链接:https://codeforces.com/contest/1816/problem/F题解:一道有趣的题。首先发现\(m=1\)和\(m\geq3\)时结论是平凡的。\(m=1\)时结论显然,下面讨论一下\(m\geq3\)时:首先可以构造\([x,(n-x)/2,(n-x)/2,\cdots]\),其中\(x\)和\(n\)同奇偶,显然此时异或值可以......
  • CF1815C
    1解法设\(f_i\)为\(i\)最多出现多少次,那么一个限制\((u,v)\)可以写成\(f_u\leqf_v+1\),把\(f\)看做最短路中的\(dis\)数组,上面的式子就是在图上连一条从\(u\)到\(v\)边权是\(1\)的边,由于边权都是\(1\),所以可以直接用\(\text{bfs}\)做.然后考虑如何构造使......
  • 「解题报告」CF1129D Isolation
    水题,但是调了好久qwq显然是DP,出现次数显然分块,那就数据结构优化DP呗。我们可以维护出当前点到每个点这段区间内有多少个出现次数为\(1\)的数,这个右端点每拓展一位修改的左端点一定是连续的区间。分块维护这个东西,如果是散块暴力重构暴力加,如果是整块那给整块打个加标记。......