Submission

Status:
[PPPPPPPPP]

Score: 100

User: Spongebob

Problemset: ภูเขา

Language: c

Time: 0.002 second

Submitted On: 2024-10-07 18:06:02

#include <stdio.h>

int main () {
    //w = h*2
    int N, col = 0, max_height, offset = 0, y;
    
    scanf("%d", &N);
    
    int mountains_height[N];
    
    if (N >= 1) {
       scanf("%d", &mountains_height[0]);
       col += mountains_height[0] * 2;
       max_height = mountains_height[0];
    }
    for (int i = 1; i < N; i++) {
        scanf("%d", &mountains_height[i]);
        col += mountains_height[i] * 2;
        max_height = mountains_height[i] > max_height ? mountains_height[i] : max_height;
    }
    
    // initail grid
    char grid[max_height][col+1];
    // set default value of the grid
    for (int i = 0; i < max_height; i++) {
        for (int j = 0; j < col; j++) {
            grid[i][j] = '.';
        }
        grid[i][col] = '\0';
    }
    
    // pot graph
    for (int i = 0; i < N; i++) {
        for (int j = 0; j < mountains_height[i]; j++) {
            y = max_height - j - 1;
            grid[y][j + offset] = '/';
            y = j + (max_height - mountains_height[i]);
            grid[y][j + offset + mountains_height[i]] = '\\';
        }
        offset += mountains_height[i] * 2;
    }
    
    
    // print out the grid
    for (int i = 0; i < max_height; i++) {
        printf("%s\n", grid[i]);
    }
    
    return 0;
}