CSES - Datatähti 2016 alku - Results
Submission details
Task:Tontti
Sender:siirikuoppala
Submission time:2015-10-11 20:22:32
Language:Python3
Status:READY
Result:14
Feedback
groupverdictscore
#1ACCEPTED14
#20
#30
Test results
testverdicttimegroup
#1ACCEPTED0.07 s1details
#2ACCEPTED0.07 s1details
#3ACCEPTED0.08 s1details
#4ACCEPTED0.07 s1details
#5ACCEPTED0.08 s1details
#60.20 s2details
#70.20 s2details
#80.22 s2details
#90.23 s2details
#100.23 s2details
#11--3details
#12--3details
#13--3details
#14--3details
#15--3details

Code

'''
Created on 10.10.2015

@author: siiri
'''
from math import sqrt
n, m, puut = input().split(" ")
n=int(n)
m=int(m)
puut=int(puut)
nn=[]
nnn=[0]
for i in range(0,m):
    nnn.append(0)
nn.append(nnn)
i=1
while i<=n:
    s=input()
    h=0
    nnn=[0]
    summa=0
    while h<m:
        if s[h] == "*":
            summa+=1
        nnn.append(summa+nn[i-1][h+1])
        h+=1
    nn.append(nnn)
    i+=1
tulos=0
if n<499:
    x=0
    sivu=sqrt(puut)//1
    if sqrt(puut)%1>0: sivu+=1
    sivu=int(sivu)
    tulos=0
    while sivu<=n and sivu<=m:
        x=0
        while x+sivu<=n:
            y=0
            while y+sivu<=m:
                if nn[x][y]+nn[x+sivu][y+sivu]-nn[x][y+sivu]-nn[x+sivu][y]==puut:
                    tulos+=1
                y+=1
            x+=1
        sivu+=1
        
else:
    if puut<nn[-1][-1]:
        print("lol")
    else:
        g=0
        while g<10:
            g=0
print(tulos)
            
            
            

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
lol
0

Test 7

Group: 2

Verdict:

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

correct output
1536063

user output
lol
0

Test 8

Group: 2

Verdict:

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

correct output
288

user output
lol
0

Test 9

Group: 2

Verdict:

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

correct output
786

user output
lol
0

Test 10

Group: 2

Verdict:

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

correct output
1763

user output
lol
0

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)