Submission
Status:
PPPPPPPPPP
Score: 100
User: SnowAveNode
Problemset: รหัสตัวเลข
Language: cpp
Time: 0.003 second
Submitted On: 2025-03-27 20:37:29
#include<bits/stdc++.h>
using namespace std;
int main() {
int n, t; cin >> n >> t;
vector<int> v(n);
for(int i = 0; i < n; i++) {
cin >> v[i];
}
vector<int> X(n,0);
int currentY = 0;
if(t == 1) {
currentY = v[0];
if(currentY == n + 1) {
X[0] = 1;
} else if(currentY == n - 1) {
X[0] = 0;
}
for(int i = 1; i < n; i++) {
if(v[i] == currentY + 1) {
X[i] = 1;
currentY ++;
} else if(v[i] == currentY - 1) {
X[i] = 0;
currentY--;
}
}
} else if(t == 2) {
currentY = v[0];
if(currentY == n + 1) {
X[0] = 1;
} else if(currentY == n - 1) {
X[0] = 0;
}
for(int i = 1; i < n; i++) {
int cand1 = 3*currentY + 1;
int cand0 = 2*currentY - 1;
if(v[i] == cand1) {
X[i] = 1;
currentY++;
} else if(v[i] == cand0) {
X[i] = 0;
currentY--;
}
}
}
for(int bitIdx = 0; bitIdx < X.size(); bitIdx++) {
cout << X[bitIdx];
if(bitIdx < X.size() - 1) {
cout << "\n";
}
}
}