Codeforces Round #534 (Div. 2) C. Grid game(思维)

版权声明:欢迎转载,若转载,请标明出处,如有错误,请指点,也欢迎大佬们给出优化方法 https://blog.csdn.net/Charles_Zaqdt/article/details/86616687

题目链接:http://codeforces.com/contest/1104/problem/C

       题意是有一个4*4的方格,要往里面放1*2或者2*1的方块,如果方格的任意一边4个都满了,就可以消除这一边的方块,并输出被消除的方块的左上角的坐标,输出任意一种方案就行。

       其实这道题就是让找一种放的方案,使得任意的放法都能够放下且没有相交,所以我们就让它们放一个角,我的方法就是让它放在左边的边和下面的边。


AC代码:

#include <bits/stdc++.h>
using namespace std;

int main()
{
  string str;
  cin>>str;
  int len = str.length();
  int a = 0,c = 0;
  for(int i=0;i<len;i++){
    if(str[i] == '0'){
      if(a == 0){
        a = 1;
        puts("1 1");
      }
      else{
        a = 0;
        puts("3 1");
      }
    }
    if(str[i] == '1'){
      if(c == 0){
        c = 1;
        puts("4 3");
      }
      else{
        c = 0;
        puts("4 1");
      }
    }
  }
  return 0;
}

猜你喜欢

转载自blog.csdn.net/Charles_Zaqdt/article/details/86616687