196862025-12-18 20:28:59sscrazyyTáblajáték 2 (70 pont)cpp17Részben helyes 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;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base51/70
1Elfogadva0/01ms500 KiB
2Elfogadva0/01ms316 KiB
3Elfogadva2/21ms508 KiB
4Elfogadva3/31ms316 KiB
5Elfogadva3/31ms324 KiB
6Részben helyes1/31ms400 KiB
7Elfogadva3/31ms332 KiB
8Elfogadva3/31ms316 KiB
9Elfogadva3/31ms404 KiB
10Elfogadva3/31ms316 KiB
11Elfogadva3/31ms564 KiB
12Részben helyes1/31ms492 KiB
13Elfogadva3/31ms316 KiB
14Elfogadva3/31ms316 KiB
15Elfogadva4/41ms316 KiB
16Részben helyes1/41ms404 KiB
17Elfogadva4/41ms316 KiB
18Elfogadva4/41ms316 KiB
19Részben helyes1/41ms508 KiB
20Részben helyes1/41ms400 KiB
21Részben helyes1/41ms404 KiB
22Részben helyes1/41ms316 KiB
23Elfogadva3/31ms316 KiB