CSES - Datatähti 2016 alku - Results
Submission details
Task:Osajono
Sender:ollpu
Submission time:2015-10-02 16:44:35 +0300
Language:Python2
Status:READY
Result:0
Feedback
groupverdictscore
#10
#20
#30
Test results
testverdicttimegroup
#10.06 s1details
#20.06 s1details
#30.06 s1details
#40.06 s1details
#50.05 s1details
#60.07 s2details
#70.06 s2details
#80.06 s2details
#90.05 s2details
#100.05 s2details
#110.06 s3details
#120.06 s3details
#130.06 s3details
#140.06 s3details
#150.06 s3details

Code

#!/usr/bin/env python
# -*- coding: utf-8 -*-

from sys import stdin

def readline():
    return stdin.readline().strip()

def get_vars():
    global n, n_1, m, x
    row1 = readline().split(' ')
    n = int(row1[0]) # Korkeus
    n_1 = n-1
    m = int(row1[1]) # Leveys
    x = int(row1[2]) # Tavoite
get_vars()

def isqrt(n):
    x = n
    y = (x + 1) // 2
    while y < x:
        x = y
        y = (x + n // x) // 2
    return x
    

def is_star(char):
    return char == '*'


def run():
    metsa = []
    for i in range(n):
        metsa.append(map(is_star, readline()))
    metsa_rot = zip(*metsa[::-1])
        
    vaihtoehtoja = 0

    sqrt_x = isqrt(x) - 1
    
    for x1 in xrange(n-sqrt_x):
        next_x_bars = [0] * m
        # for y1 in xrange(m):
        #     bar_height = y1+1
        #     bar = metsa_rot[y1][-(bar_height+x1):n-x1].count(True)
        #     next_x_bars.append(bar)
        
        next_y_bars = [0] * n
        # for x2 in xrange(n-x1):
        #     bar_width = x2
        #     x2 = x1+x2
        #     bar = metsa[x2][:bar_width].count(True)
        #     next_y_bars[x2] = bar
        
        for y1 in xrange(m-sqrt_x):
            val = 0
            for w in xrange(1, min(n-x1+1, m-y1+1)):
                t_x2 = x1+w-1
                t_y2 = y1+w-1
        
                val += next_x_bars[t_y2]
                val += next_y_bars[t_x2]
        
                if val == x:
                    vaihtoehtoja += 1
                # Prepare for next
                if w != 1:
                    # For next_x_bars ->
                    if metsa[t_x2][t_y2]:
                        next_x_bars[t_y2] -= 1
                        # For next_y_bars -->
                        next_y_bars[t_x2] += 1
                    if metsa[t_x2][y1]:
                        next_y_bars[t_x2] -= 1
                    
    print(vaihtoehtoja)
run()

Test details

Test 1

Group: 1

Verdict:

input
BBBAABBBAAAABBAAAABAABAABBBBBB...

correct output
2554

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 16, in <module>
    get_vars()
  File "input/code.py", line 12, in get_vars
    n = int(row1[0]) # Korkeus
ValueError: invalid literal for int() with base 10: 'BBBAABBBAAAABBAAAABAABAABBBBBBAABBBBBAAABAAABABAABBABBAAABABABABBABBBBABABAABBAAABBBBABBBBAABBAABAAA'

Test 2

Group: 1

Verdict:

input
GDFVYWQCZAFGICSXOSWBZMGPDBSSVL...

correct output
299

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 16, in <module>
    get_vars()
  File "input/code.py", line 12, in get_vars
    n = int(row1[0]) # Korkeus
ValueError: invalid literal for int() with base 10: 'GDFVYWQCZAFGICSXOSWBZMGPDBSSVLFMEYWRESVQFYWMOLSCEADYZHZIIYEJVIPCLSFMYNKXTOWYSRDPDVNLQNLFPSXVHYKKWHZW'

Test 3

Group: 1

Verdict:

input
AAAAAAAAAAAAAAAAAAAAAAAAAZAAAA...

correct output
4314

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 16, in <module>
    get_vars()
  File "input/code.py", line 12, in get_vars
    n = int(row1[0]) # Korkeus
ValueError: invalid literal for int() with base 10: 'AAAAAAAAAAAAAAAAAAAAAAAAAZAAAAZAZAZAAAAAAAAAAAAAAAAAAAAAZZAAAAAAAAAAAZAAAAAZAAAAAAAAAAAAAAAAAAAAAAAA'

Test 4

Group: 1

Verdict:

input
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

correct output
4231

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 16, in <module>
    get_vars()
  File "input/code.py", line 12, in get_vars
    n = int(row1[0]) # Korkeus
ValueError: invalid literal for int() with base 10: 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZZAAAAAAZAAAAZAAAAAZAAAAAAAAZAAAAAAAAAAAZAAAZAAAAAAAAAAAAAZAAAA'

Test 5

Group: 1

Verdict:

input
QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ...

correct output
5050

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 16, in <module>
    get_vars()
  File "input/code.py", line 12, in get_vars
    n = int(row1[0]) # Korkeus
ValueError: invalid literal for int() with base 10: 'QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ'

Test 6

Group: 2

Verdict:

input
BBABABBBABBAABBABBABAABAAABABA...

correct output
6253029

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 16, in <module>
    get_vars()
  File "input/code.py", line 12, in get_vars
    n = int(row1[0]) # Korkeus
ValueError: invalid literal for int() with base 10: 'BBABABBBABBAABBABBABAABAAABABAABBBAABAABBBBBBBAABBABBBABBABBAAABBAABABABBABBBBBABBBBBBBABABABBBAABBABABAAABBBAABABBABBBBABBBABBBAABBBABBBBBBBAAABAAAABAABBBBAAABABBBABAABBBBABABAABAAABAABBABABAAAABBAAA'

Test 7

Group: 2

Verdict:

input
RBKJMLDVQMKHYKCNDIVVKOMFUXTFMG...

correct output
485173

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 16, in <module>
    get_vars()
  File "input/code.py", line 12, in get_vars
    n = int(row1[0]) # Korkeus
ValueError: invalid literal for int() with base 10: 'RBKJMLDVQMKHYKCNDIVVKOMFUXTFMGICWVUWKXCYRWJQMRSLJNGZTCGMDCQVTPWAYSXXVTCYJEYQCUUPTWKJBHZXVVGBEJOOYDSHTLKXHWCMKCHREGXSGDYECFJMMWEGCWSHWWWDIXJEGJSRLNMTQEJDAVMAFQPOZSLNWVWUDQWTKNMGIUFTDVDMLZIHVEMQHVCWJSED'

Test 8

Group: 2

Verdict:

input
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

correct output
12427725

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 16, in <module>
    get_vars()
  File "input/code.py", line 12, in get_vars
    n = int(row1[0]) # Korkeus
ValueError: invalid literal for int() with base 10: 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA'

Test 9

Group: 2

Verdict:

input
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

correct output
12467549

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 16, in <module>
    get_vars()
  File "input/code.py", line 12, in get_vars
    n = int(row1[0]) # Korkeus
ValueError: invalid literal for int() with base 10: 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA'

Test 10

Group: 2

Verdict:

input
QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ...

correct output
12502500

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 16, in <module>
    get_vars()
  File "input/code.py", line 12, in get_vars
    n = int(row1[0]) # Korkeus
ValueError: invalid literal for int() with base 10: 'QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ'

Test 11

Group: 3

Verdict:

input
BAAAAABABBABAABAABABABBBABBAAB...

correct output
2500051369

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 16, in <module>
    get_vars()
  File "input/code.py", line 12, in get_vars
    n = int(row1[0]) # Korkeus
ValueError: invalid literal for int() with base 10: 'BAAAAABABBABAABAABABABBBABBAABBBABBBABBBBBABBBBAAAAAABABAAAAAAABAABAABABBBAAABABAAAABABABAABBAAAABABAAABABBBBABBBBABABAAAAAABAAABBBBBBABBAAAABABABAABBABABAAABBBAABBAABABBABABAABABABBBBBABBBABAABAABABB'

Test 12

Group: 3

Verdict:

input
ABBURXDRVXAYBPXXOQZNYHLWGUEEWR...

correct output
192407124

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 16, in <module>
    get_vars()
  File "input/code.py", line 12, in get_vars
    n = int(row1[0]) # Korkeus
ValueError: invalid literal for int() with base 10: 'ABBURXDRVXAYBPXXOQZNYHLWGUEEWRNOMCJGFEMRRSCURKRFGMOLHWBPJQSREDUVUHRESNQNYKFMBSNIUTFFZWALMYHECUOTYXVDYMLZYZCYDMYIKGCYYXXTNGJDCZPYFGHDBCPZCFWSJOCGXMJAFNIKHPBMNUZCDHYNEGXSPHYGIUXWIKQFKLYCXKNHDYCGUECOFTPT'

Test 13

Group: 3

Verdict:

input
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

correct output
4998050400

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 16, in <module>
    get_vars()
  File "input/code.py", line 12, in get_vars
    n = int(row1[0]) # Korkeus
ValueError: invalid literal for int() with base 10: 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA'

Test 14

Group: 3

Verdict:

input
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

correct output
4998850144

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 16, in <module>
    get_vars()
  File "input/code.py", line 12, in get_vars
    n = int(row1[0]) # Korkeus
ValueError: invalid literal for int() with base 10: 'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA'

Test 15

Group: 3

Verdict:

input
QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ...

correct output
5000050000

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 16, in <module>
    get_vars()
  File "input/code.py", line 12, in get_vars
    n = int(row1[0]) # Korkeus
ValueError: invalid literal for int() with base 10: 'QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ'