CF1207B Square Filling

Posted lyt020321

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CF1207B Square Filling相关的知识,希望对你有一定的参考价值。

技术图片
技术图片

代码存档

#include <bits/stdc++.h>
#define maxn 100
using namespace std ;
int n , m , flag = 0 , tim ;
struct dy
    int x , y ;
ans[maxn*maxn] ;
int a[maxn][maxn] , vis[maxn][maxn] ;
int check(int x,int y) 
    if(a[x+1][y] && a[x][y+1] && a[x+1][y+1]) 
        return 1 ;
    return 0 ;

void change(int x,int y) 
    vis[x][y] = true ;
    vis[x+1][y] = true ;
    vis[x][y+1] = true ;
    vis[x+1][y+1] = true ;

int main () 
    cin >> n >> m ;
    for(int i = 1 ; i <= n ; i ++) 
        for(int j = 1 ; j <= m ; j ++) 
            cin >> a[i][j] ;
            if(a[i][j]) flag = 1 ;
        
    
    if(!flag) 
        puts("0") ;
        return 0 ;
    else 
        for(int i = 1 ; i <= n ; i ++) 
            for(int j = 1 ; j <= m ; j ++) 
                if(a[i][j]) 
                    if(check(i,j)) 
                        ans[++tim].x = i ;
                        ans[tim].y = j ;
                        change(i,j) ;
                    else if(!vis[i][j])
                        puts("-1") ;
                        return 0 ;
                    
                
            
        
    
    cout << tim << endl ;
    for(int i = 1 ; i <= tim ; i ++) 
        cout << ans[i].x << " " << ans[i].y << endl ;
    
    return 0 ;

溜了溜了

以上是关于CF1207B Square Filling的主要内容,如果未能解决你的问题,请参考以下文章

Square Root of Permutation - CF612E

CF1187F Expected Square Beauty

CF1458C Latin Square

CF1A-Theatre Square

CF 711B - Chris and Magic Square

CF1221F Choose a Square(二维偏序)