196862025-12-18 20:28:59sscrazyyTáblajáték 2 (70 pont)cpp17Partially correct 51/701ms564 KiB
#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
using namespace std;

string toBase3(long long num) {
    if (num == 0) return "0";
    string result = "";
    while (num > 0) {
        result += char('0' + num % 3);
        num /= 3;
    }
    reverse(result.begin(), result.end());
    return result;
}

int main() {
    int k;
    cin >> k;
    
    int row = 0;
    long long pos = 0;
    
    for (int i = 0; i < k; i++) {
        int move;
        cin >> move;
        
        if (move == 0) {  // down-left
            pos = pos * 3;
            row++;
        } else if (move == 1) {  // down-middle
            pos = pos * 3 + 1;
            row++;
        } else if (move == 2) {  // down-right
            pos = pos * 3 + 2;
            row++;
        } else if (move == 3) {  // up
            pos = pos / 3;
            row--;
        } else if (move == 4) {  // left
            pos--;
        } else if (move == 5) {  // right
            pos++;
        }
    }
    
    cout << row << endl;
    cout << toBase3(pos) << endl;
    
    return 0;
}
SubtaskSumTestVerdictTimeMemory
base51/70
1Accepted0/01ms500 KiB
2Accepted0/01ms316 KiB
3Accepted2/21ms508 KiB
4Accepted3/31ms316 KiB
5Accepted3/31ms324 KiB
6Partially correct1/31ms400 KiB
7Accepted3/31ms332 KiB
8Accepted3/31ms316 KiB
9Accepted3/31ms404 KiB
10Accepted3/31ms316 KiB
11Accepted3/31ms564 KiB
12Partially correct1/31ms492 KiB
13Accepted3/31ms316 KiB
14Accepted3/31ms316 KiB
15Accepted4/41ms316 KiB
16Partially correct1/41ms404 KiB
17Accepted4/41ms316 KiB
18Accepted4/41ms316 KiB
19Partially correct1/41ms508 KiB
20Partially correct1/41ms400 KiB
21Partially correct1/41ms404 KiB
22Partially correct1/41ms316 KiB
23Accepted3/31ms316 KiB