Submission

Status:

----------

Subtask/Task Score:

0/100

Score: 0

User: ChanakanStudy

Problemset: กราฟสัญญาณดิจิทัล

Language: cpp

Time: 0.004 second

Submitted On: 2026-10-12 10:27:01

#include <iostream>
#include <vector>
#include <algorithm>
#include <string>
#include <cmath>
#include <queue>
#include <stack>
#include <climits>
#include <map>
#include <numeric>
#include <iomanip>
using namespace std;
using ll = long long;

int main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);

    string s;
    cin >> s;
    int n;
    cin >> n;
    int width = (s.size() * (n-1)) +1;
    char graph[n][width];
    // cout << width;

    for(int i = 0;i<n;i++) {
        for(int j = 0;j<width;j++) {
            graph[i][j] = '_';
        }
    }

    int currentx = 0 ,currenty= 0,count=0;
    for(int w = 0; w<s.size() ;w++) {
        if (s[w] == '1') {
            int targetx = 0 , targety = currenty + n - 1;
            while(currentx != targetx) {
                graph[currentx][currenty] = 'X';
                currentx--;
            }

            while(currenty != targety) {
                graph[currentx][currenty] = 'X';
                currenty++;
                if(currenty == targety) {
                    graph[currentx][currenty] = 'X';
                }
                // cout << currentx << " : " << currenty << '\n';
            }

            count++;
        }

        else {
            int targetx = n-1 , targety = currenty + n - 1;
            while(currentx != targetx) {
                graph[currentx][currenty] = 'X';
                currentx++;
            }
            while(currenty != targety) {
                graph[currentx][currenty] = 'X';
                currenty++;
                if(currenty == targety) {
                    graph[currentx][currenty] = 'X';
                }
                // cout << currentx << " : " << currenty << '\n';
            }
        }
    }


    for(int i = 0;i<n;i++) {
        for(int j = 0;j<width;j++) {
            cout << graph[i][j];
        }
        cout << '\n';
    }

    return 0;
}