Submission

Status:
PPPPP

Score: 100

User: Spongebob

Problemset: หินงอก

Language: c

Time: 0.001 second

Submitted On: 2024-10-05 20:23:57

#include <stdio.h>

int main () {
    int N;
    scanf("%d", &N);
    int h_stones[N], h_max, col = 0;
    
    if (N >= 1) {
       scanf("%d", &h_stones[0]);
       h_max = h_stones[0];
       col += h_stones[0] * 2;
    }
    for (int i = 1; i < N; i++) {
        scanf("%d", &h_stones[i]);
        h_max = h_stones[i] > h_max ? h_stones[i] : h_max;
        col += h_stones[i] * 2;
    }
    
    char grid[h_max][col+1];
    int counter = 0;
    
    for (int i = 0; i < h_max; i++) {
        for (int j = 0; j < N; j++) {
            if (h_stones[j]-i-1 >= 0) {
               for (int k = 0; k < i; k++) {
                   grid[i][counter] = ' ';
                   counter++;
               }
               grid[i][counter] = '\\';
               counter++;
               for (int k = 0; k < (h_stones[j]-i-1)*2; k++) {
                   grid[i][counter] = ' ';
                   counter++;
               }
               grid[i][counter] = '/';
               counter++;
               for (int k = 0; k < i; k++) {
                   grid[i][counter] = ' ';
                   counter++;
               }
            }
            else {
                 for (int k = 0; k < h_stones[j]*2; k++) {
                   grid[i][counter] = ' ';
                   counter++;
               }
            }
        }
        grid[i][col] = '\0';
        counter = 0;
    }
    
    for (int i = 0; i < h_max; i++) {
        printf("%s\n", grid[i]); 
    }
    
    return 0;
}