Submission

Status:
PPPPxxxxxx

Score: 40

User: Punnawith

Problemset: โชว์ของโลมา

Language: cpp

Time: 0.046 second

Submitted On: 2025-03-22 20:08:35

#include <iostream>
#include <vector>

using namespace std;

int main() {
    int N;
    cin >> N;

    vector<vector<int>> board(N, vector<int>(N, 0));
    int num = 1;
    int row = 0, col = 0;

    while (num <= N * N) {
        // Move right
        while (col < N && board[row][col] == 0) {
            board[row][col] = num++;
            col++;
        }
        col--; row++; // Adjust

        // Move left
        while (col >= 0 && row < N && board[row][col] == 0) {
            board[row][col] = num++;
            col--;
        }
        col++; row++; // Adjust

        // Move down
        while (row < N && col < N && board[row][col] == 0) {
            board[row][col] = num++;
            row++;
        }
        row--; col++; // Adjust

        // Move up
        while (row >= 0 && col < N && board[row][col] == 0) {
            board[row][col] = num++;
            row--;
        }
        row++; col++; // Adjust
    }

    // Print the board
    int sumLastDigits = 0;
    for (int i = 0; i < N; i++) {
        int number = board[N - 1][i];
        int digits = number % 10;
        sumLastDigits += digits;
    }

    cout << sumLastDigits;

    return 0;
}