Submission

Status:

PPPPPPPPPP

Subtask/Task Score:

100/100

Score: 100

User: chokun

Problemset: ลูกเต๋า

Language: cpp

Time: 0.002 second

Submitted On: 2026-10-06 11:22:42

#include <bits/stdc++.h>
using namespace std;

int main() {
    string input;
    cin >> input;

    // 1. ตรวจสอบเงื่อนไข ERROR 
    // หากข้อมูลนำเข้าไม่ใช่ 3 หลัก หรือมีเลขที่ไม่อยู่ในช่วง 1-6 ให้พิมพ์ ERROR
    if (input.length() != 3) {
        cout << "ERROR" << endl;
        return 0;
    }
    for (int i = 0; i < 3; i++) {
        if (input[i] < '1' || input[i] > '6') {
            cout << "ERROR" << endl;
            return 0;
        }
    }

    // 2. กำหนดรูปแบบหน้าลูกเต๋า 1-6 ให้ตรงตามตัวอย่างข้อมูลส่งออกของโจทย์
    // ดัชนี 0 จะใส่ว่างไว้ เพื่อให้ดัชนี 1-6 ตรงกับเลขหน้าลูกเต๋าพอดี
    string dice[7][3] = {
        {"   ", "   ", "   "}, // หน้า 0 (ไม่ใช้งาน)
        {"   ", " * ", "   "}, // หน้า 1 (จุดตรงกลาง)
        {"   ", "* *", "   "}, // หน้า 2 (สองจุดบรรทัดกลาง)
        {" * ", " * ", " * "}, // หน้า 3 (สามจุดเรียงแนวดิ่งตรงกลาง)
        {"* *", "   ", "* *"}, // หน้า 4 (สี่มุม)
        {"* *", " * ", "* *"}, // หน้า 5 (สี่มุม + ตรงกลาง)
        {"* *", "* *", "* *"}  // หน้า 6 (หกจุด)
    };

    // แปลงอักขระในข้อความให้เป็นตัวเลขบอกหน้าลูกเต๋า
    int d1 = input[0] - '0';
    int d2 = input[1] - '0';
    int d3 = input[2] - '0';

    // 3. วาดภาพหน้าลูกเต๋าเรียงในแนวนอนทีละบรรทัด (มีทั้งหมด 3 บรรทัด)
    for (int line = 0; line < 3; line++) {
        cout << dice[d1][line] << "|";
        cout << dice[d2][line] << "|";
        cout << dice[d3][line] << endl;
    }
}