CF1103A

· · 题解

思路:

显然可以考虑第一行放横着的,第二行放竖着的,然后用变量维护一下各自的 y 坐标,看是否充满一行即可。

Code:

#include <bits/stdc++.h>

using namespace std;

string s;
int Y0 = 1, Y1 = 1;

int main() {
    cin >> s;

    for (int i = 0; i < (int)s.size(); ++i) {
        if (s[i] == '0') {
            printf("2 %d\n", Y1);

            Y1++;
            if (Y1 > 4) Y1 = 1;
        } else {
            printf("1 %d\n", Y0);

            Y0 += 2;
            if (Y0 > 4) Y0 = 1;
        }
    }

    return 0;
}