CSES - Datatähti 2016 alku - Results
Submission details
Task:Tontti
Sender:Joku72
Submission time:2015-10-10 22:25:37 +0300
Language:Python2
Status:READY
Result:14
Feedback
groupverdictscore
#1ACCEPTED14
#20
#30
Test results
testverdicttimegroup
#1ACCEPTED0.05 s1details
#2ACCEPTED0.06 s1details
#3ACCEPTED0.07 s1details
#4ACCEPTED0.06 s1details
#5ACCEPTED0.05 s1details
#6--2details
#7--2details
#8--2details
#9--2details
#10--2details
#11--3details
#12--3details
#13--3details
#14--3details
#15--3details

Code

from math import sqrt
syote=raw_input()
list(syote)
syote=[x.strip() for x in syote.split(" ")]
syote=[int(x) for x in syote]

jokulista=[]
rivit={}
xmahdolliset=[]
skipattava={}
menokerrat=0
tarkistuslista=[]
tarkistus=0
kokolista=[]
puidenmaara=0
ykoordinaatti=0
xkoordinaatti=0
xkoko=0
vastaus=0
indexit=[]

for i in xrange(0,syote[0]):
    rivit.update({i:raw_input()})

z=1
for i in xrange(0,syote[1]):
    xmahdolliset.append(z**2)
    z+=1

for i in xmahdolliset:
    indexit.append(i)
    if syote[2]<=i:
        indexit.remove(i)
        xkoko=int(sqrt(i))
        break
    
for i in xrange(0,1954775806):
    forlooppi=(syote[0]-xkoko+1)*(syote[1]-xkoko+1)
    for z in xrange(0,forlooppi):
        for j in xrange(ykoordinaatti,ykoordinaatti+xkoko):
            if j in skipattava:
                if xkoordinaatti in jokulista:
                    pass
                else:
                    xlista=rivit[j]
                for i in xrange(xkoordinaatti,xkoordinaatti+xkoko): 
                    tarkistuslista.append(xlista[i])
                    
            else:    
                xlista=rivit[j]
                for i in xrange(xkoordinaatti,xkoordinaatti+xkoko): 
                    tarkistuslista.append(xlista[i])
        for i in tarkistuslista:
            if i=="*":
                tarkistus+=1
        tarkistuslista=[]
        if tarkistus==syote[2]:
            vastaus+=1
        elif tarkistus>syote[2]:
            puidenmaara+=1

        elif tarkistus<syote[2]:
            if ykoordinaatti not in skipattava:
                skipattava.update({ykoordinaatti:[xkoordinaatti]})
            else:
                if xkoordinaatti not in skipattava[ykoordinaatti]:
                    skipattava[ykoordinaatti]=skipattava[ykoordinaatti]+[xkoordinaatti]
            
        tarkistus=0
        xkoordinaatti+=1
                        
        if xkoordinaatti==syote[1]-xkoko+1:
            xkoordinaatti=0
            ykoordinaatti+=1

        if ykoordinaatti==syote[0]-xkoko+1:
            xkoordinaatti=0
            ykoordinaatti=0
            menokerrat=0
            
    if xkoko==syote[0]:
        break
    if xkoko==syote[1]:
        break
    if puidenmaara==forlooppi:
        break

    xkoko+=1
    puidenmaara=0
print vastaus

Test details

Test 1

Group: 1

Verdict: ACCEPTED

input
10 10 1
......*...
.......*..
*..*....*.
*....*....
...

correct output
94

user output
94

Test 2

Group: 1

Verdict: ACCEPTED

input
10 10 5
**********
**********
**********
**********
...

correct output
0

user output
0

Test 3

Group: 1

Verdict: ACCEPTED

input
10 10 10
**...*...*
*..*.**.*.
...**.*..*
*...**.*..
...

correct output
4

user output
4

Test 4

Group: 1

Verdict: ACCEPTED

input
10 10 5
****......
*.*.**..**
....*.*..*
...*.***..
...

correct output
16

user output
16

Test 5

Group: 1

Verdict: ACCEPTED

input
10 10 2
**.***..*.
...*.*....
.***.*...*
***.***..*
...

correct output
30

user output
30

Test 6

Group: 2

Verdict:

input
500 500 1
.................................

correct output
9552040

user output
(empty)

Test 7

Group: 2

Verdict:

input
500 500 5
.................................

correct output
1536063

user output
(empty)

Test 8

Group: 2

Verdict:

input
500 500 25000
**...*...**..*.*..*.**.*..*.*....

correct output
288

user output
(empty)

Test 9

Group: 2

Verdict:

input
500 500 12500
**.**.*..*...*.**...*.***........

correct output
786

user output
(empty)

Test 10

Group: 2

Verdict:

input
500 500 5000
.*.*.**..*.*.**.**..*..**...*....

correct output
1763

user output
(empty)

Test 11

Group: 3

Verdict:

input
2000 2000 1
.................................

correct output
489611392

user output
(empty)

Test 12

Group: 3

Verdict:

input
2000 2000 5
.................................

correct output
120725884

user output
(empty)

Test 13

Group: 3

Verdict:

input
2000 2000 400000
..*..**.**.**.*.***...**.*..**...

correct output
1849

user output
(empty)

Test 14

Group: 3

Verdict:

input
2000 2000 200000
***.*....*.*..*....**..*..*.*....

correct output
2665

user output
(empty)

Test 15

Group: 3

Verdict:

input
2000 2000 80000
**.**...*.***.**....**.*....*....

correct output
5587

user output
(empty)