Submission
Status:
PPPPPPPPPPPPPPPPPPPP
Subtask/Task Score:
100/100
Score: 100
User: zodji
Problemset: Abacus
Language: python
Time: 0.011 second
Submitted On: 2025-10-24 10:41:03
def draw_abacus(number):
num_str = str(number).rjust(8,'0')
abacus = [[" " for _ in range(8)] for _ in range(10)]
for col, ch in enumerate(num_str):
digit = int(ch)
if digit >= 5:
abacus[0][col] = "*"
abacus[1][col] = " "
abacus[2][col] = "*"
else:
abacus[0][col] = "*"
abacus[1][col] = "*"
abacus[2][col] = " "
ones = digit %5
patterns = {
0:[" ", "*", "*", "*", "*", "*"],
1:["*", " ", "*", "*", "*", "*"],
2:["*", "*", " ", "*", "*", "*"],
3:["*", "*", "*", " ", "*", "*"],
4:["*", "*", "*", "*", " ", " "],
}
for i, val in enumerate(patterns[ones]):
abacus[4 + i][col] = val
abacus[9][col] = "*"
for r in range(3):
print(" ".join(abacus[r]))
print('-----------------')
for r in range(4, 10):
print(" ".join(abacus[r]))
n = int(input())
draw_abacus(n)