Task: | Ruudukko |
Sender: | |
Submission time: | 2015-09-11 22:56:43 +0300 |
Language: | Python3 |
Status: | READY |
Result: | 100 |
group | verdict | score |
---|---|---|
#1 | ACCEPTED | 12 |
#2 | ACCEPTED | 31 |
#3 | ACCEPTED | 57 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | ACCEPTED | 0.09 s | 1 | details |
#2 | ACCEPTED | 0.08 s | 1 | details |
#3 | ACCEPTED | 0.08 s | 1 | details |
#4 | ACCEPTED | 0.08 s | 1 | details |
#5 | ACCEPTED | 0.07 s | 1 | details |
#6 | ACCEPTED | 0.08 s | 2 | details |
#7 | ACCEPTED | 0.09 s | 2 | details |
#8 | ACCEPTED | 0.09 s | 2 | details |
#9 | ACCEPTED | 0.08 s | 2 | details |
#10 | ACCEPTED | 0.07 s | 2 | details |
#11 | ACCEPTED | 0.08 s | 3 | details |
#12 | ACCEPTED | 0.08 s | 3 | details |
#13 | ACCEPTED | 0.10 s | 3 | details |
#14 | ACCEPTED | 0.07 s | 3 | details |
#15 | ACCEPTED | 0.08 s | 3 | details |
Code
#!/usr/bin/env python3 TILAN_MAX_LEV = 18 TILAN_MAX_KORK = 5 # (5 + väli) per tila # ruudukko koostuu yhdestä 1-20 reitin tilasta # ja mahdollisesti yhdestä tai kahdesta isommasta reittitilasta def tilan_reitit(x, y): tila = [[1 for a in range(x)] for b in range(y)] for b in range(1, y): for a in range(1, x): tila[b][a] = tila[b-1][a] + tila[b][a-1] return tila def sopiva_ruudukko(kohdemaara, tilaruudukko): paras = 0 valinta = None for y in range(TILAN_MAX_KORK): for x in range(TILAN_MAX_LEV): if paras < tilaruudukko[y][x] <= kohdemaara: paras = tilaruudukko[y][x] valinta = (x + 1, y + 1) return valinta, paras def maarita_ruudukot(reitteja): tilaruudukko = tilan_reitit(TILAN_MAX_LEV, TILAN_MAX_KORK) ruudukot = [] while reitteja > 20: valinta, kattaa = sopiva_ruudukko(reitteja, tilaruudukko) reitteja -= kattaa ruudukot.append(valinta) return (ruudukot, reitteja) def luo_kentta(ruudukot, jaljella): rivit = [] if jaljella > 0: rivit.append('.' * jaljella + '#' * (20 - jaljella)) rivit.append('.' * 20) for x, y in ruudukot: rivit.append('.' + 18 * '#' + '.') for j in range(y - 1): rivit.append('.' * x + '#' * (19 - x) + '.') rivit.append('.' * 20) while len(rivit) < 20: rivit.append(19 * '#' + '.') return rivit def piirra_kentta(kentta): for rivi in kentta: print(rivi) def main(): n = int(input()) ruudukot, jaljella = maarita_ruudukot(n) kentta = luo_kentta(ruudukot, jaljella) piirra_kentta(kentta) if __name__ == '__main__': main()
Test details
Test 1
Group: 1
Verdict: ACCEPTED
input |
---|
2 |
correct output |
---|
.................... .################### .################### .################### .################### ... |
user output |
---|
..################## .................... ###################. ###################. ###################. ... |
Test 2
Group: 1
Verdict: ACCEPTED
input |
---|
5 |
correct output |
---|
.................... .################..# .#################.. .#################.. .##################. ... |
user output |
---|
.....############### .................... ###################. ###################. ###################. ... |
Test 3
Group: 1
Verdict: ACCEPTED
input |
---|
7 |
correct output |
---|
.................... .################..# .#################.. .#################.. .##################. ... |
user output |
---|
.......############# .................... ###################. ###################. ###################. ... |
Test 4
Group: 1
Verdict: ACCEPTED
input |
---|
8 |
correct output |
---|
.................... .################### .################### .################### .################### ... |
user output |
---|
........############ .................... ###################. ###################. ###################. ... |
Test 5
Group: 1
Verdict: ACCEPTED
input |
---|
9 |
correct output |
---|
.................... .################### .################### .################### .################### ... |
user output |
---|
.........########### .................... ###################. ###################. ###################. ... |
Test 6
Group: 2
Verdict: ACCEPTED
input |
---|
19 |
correct output |
---|
.................... .############..##### .#############..#### .#############...### .##############...## ... |
user output |
---|
...................# .................... ###################. ###################. ###################. ... |
Test 7
Group: 2
Verdict: ACCEPTED
input |
---|
32 |
correct output |
---|
.................... .################### .################### .################### .################### ... |
user output |
---|
....################ .................... .##################. .......############. .......############. ... |
Test 8
Group: 2
Verdict: ACCEPTED
input |
---|
44 |
correct output |
---|
.................... .################..# .#################.. .#################.. .##################. ... |
user output |
---|
........############ .................... .##################. ........###########. ........###########. ... |
Test 9
Group: 2
Verdict: ACCEPTED
input |
---|
76 |
correct output |
---|
.................... .########..######..# .#########..######.. .#########...#####.. .##########...#####. ... |
user output |
---|
......############## .................... .##################. .....##############. .....##############. ... |
Test 10
Group: 2
Verdict: ACCEPTED
input |
---|
93 |
correct output |
---|
.................... .########..##..##..# .#########..##..##.. .#########...#...#.. .##########...#...#. ... |
user output |
---|
..################## .................... .##################. .............######. .............######. ... |
Test 11
Group: 3
Verdict: ACCEPTED
input |
---|
141 |
correct output |
---|
.................... .################..# .#################.. .#################.. .##################. ... |
user output |
---|
.....############### .................... .##################. ................###. ................###. ... |
Test 12
Group: 3
Verdict: ACCEPTED
input |
---|
422 |
correct output |
---|
.................... .####..##########..# .#####..##########.. .#####...#########.. .######...#########. ... |
user output |
---|
..################## .................... .##################. ............#######. ............#######. ... |
Test 13
Group: 3
Verdict: ACCEPTED
input |
---|
671 |
correct output |
---|
.................... .#.##########..##..# ....##########..##.. .#...#########...#.. .##...#########...#. ... |
user output |
---|
......############## .................... .##################. ..............#####. ..............#####. ... |
Test 14
Group: 3
Verdict: ACCEPTED
input |
---|
895 |
correct output |
---|
.................... .#.##..##..##..##..# ....##..##..##..##.. .#...#...#...#...#.. .##...#...#...#...#. ... |
user output |
---|
.################### .................... .##################. ................###. ................###. ... |
Test 15
Group: 3
Verdict: ACCEPTED
input |
---|
956 |
correct output |
---|
.................... .#.##..######..##..# ....##..######..##.. .#...#...#####...#.. .##...#...#####...#. ... |
user output |
---|
....################ .................... .##################. ................###. ................###. ... |