CSES - Datatähti 2016 alku - Results
Submission details
Task:Tontti
Sender:ollpu
Submission time:2015-10-01 17:48:10 +0300
Language:Python2
Status:READY
Result:0
Feedback
groupverdictscore
#10
#20
#30
Test results
testverdicttimegroup
#10.05 s1details
#20.06 s1details
#30.05 s1details
#40.06 s1details
#50.06 s1details
#60.04 s2details
#70.05 s2details
#80.06 s2details
#90.06 s2details
#100.06 s2details
#110.06 s3details
#120.06 s3details
#130.07 s3details
#140.07 s3details
#150.05 s3details

Code

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
from sys import stdin
from sys import stdout
def readline():
return stdin.readline().strip()
line1 = readline().split(' ')
# Kaupunkeja
n = int(line1[0])
# Lentoja
m = int(line1[1])
class Flight:
def __init__(self, a, b, h):
self.fr = a
self.to = b
self.price = int(h)
class City:
def __init__(self, aid):
self.total_price = sys.maxint
self.calculated = False
self.con_fr = []
self.con_to = []
self.stack = 0
self.aid = aid
self.remove = False
def __eq__(self, other):
return (isinstance(other, self.__class__)
and self.aid == other.aid)
flights = []
cities = []
for c in xrange(n):
cities.append(City(c))
uncalculated = list(cities)
for f in xrange(m):
row = readline().split(' ')
flight = Flight(cities[int(row[0])-1], cities[int(row[1])-1], row[2])
flights.append(flight)
flight.fr.con_to.append(flight)
flight.to.con_fr.append(flight)
# Purge all unnecessary cities
removes = []
for city_i in xrange(n):
if city_i > 0:
if city_i < len(cities)-1:
city = cities[city_i]
if len(city.con_to) == 0 or len(city.con_fr) == 0:
for flight in city.con_to:
flights.remove(flight)
for flight in city.con_fr:
flights.remove(flight)
removes.append(city)
print(city_i)
else:
break
for city in removes:
cities.remove(city)
start = cities[0]
end = cities[-1]
current = cities[0]
current.total_price = 0
found = False
while not found:
for flight in current.con_to:
city = flight.to
if not city.calculated:
if current.stack % 2 == 0:
new_price = current.total_price + flight.price
else:
new_price = current.total_price
if new_price < city.total_price:
city.total_price = new_price
city.stack = current.stack + 1
uncalculated.remove(current)
current.calculated = True
if current == end:
found = True
print(current.total_price)
break
smallest_price = sys.maxint
for city in uncalculated:
if city.total_price < smallest_price:
smallest = city
smallest_price = city.total_price
current = smallest

Test details

Test 1

Group: 1

Verdict:

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

correct output
94

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 46, in <module>
    flight = Flight(cities[int(row[0])-1], cities[int(row[1])-1], row[2])
ValueError: invalid literal for int() with base 10: '......*...'

Test 2

Group: 1

Verdict:

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

correct output
0

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 46, in <module>
    flight = Flight(cities[int(row[0])-1], cities[int(row[1])-1], row[2])
ValueError: invalid literal for int() with base 10: '**********'

Test 3

Group: 1

Verdict:

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

correct output
4

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 46, in <module>
    flight = Flight(cities[int(row[0])-1], cities[int(row[1])-1], row[2])
ValueError: invalid literal for int() with base 10: '**...*...*'

Test 4

Group: 1

Verdict:

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

correct output
16

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 46, in <module>
    flight = Flight(cities[int(row[0])-1], cities[int(row[1])-1], row[2])
ValueError: invalid literal for int() with base 10: '****......'

Test 5

Group: 1

Verdict:

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

correct output
30

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 46, in <module>
    flight = Flight(cities[int(row[0])-1], cities[int(row[1])-1], row[2])
ValueError: invalid literal for int() with base 10: '**.***..*.'

Test 6

Group: 2

Verdict:

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

correct output
9552040

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 46, in <module>
    flight = Flight(cities[int(row[0])-1], cities[int(row[1])-1], row[2])
ValueError: invalid literal for int() with base 10: '........................................................................................................................................................................................................'

Test 7

Group: 2

Verdict:

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

correct output
1536063

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 46, in <module>
    flight = Flight(cities[int(row[0])-1], cities[int(row[1])-1], row[2])
ValueError: invalid literal for int() with base 10: '........................................................................................................................................................................................................'

Test 8

Group: 2

Verdict:

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

correct output
288

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 46, in <module>
    flight = Flight(cities[int(row[0])-1], cities[int(row[1])-1], row[2])
ValueError: invalid literal for int() with base 10: '**...*...**..*.*..*.**.*..*.*...*..*.**..**.*..*....******...***.**.*.*.**.***..*.***........*..**.******.***.*.**...**.***.*.....**.*....*.*.*.***..***********...**.*.*.*.*....*.**..*****..****.....*'

Test 9

Group: 2

Verdict:

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

correct output
786

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 46, in <module>
    flight = Flight(cities[int(row[0])-1], cities[int(row[1])-1], row[2])
ValueError: invalid literal for int() with base 10: '**.**.*..*...*.**...*.***.....*.*..**.**.*.*.**..*.***.**.......**.*.**..***..*.***...*...*..***.**.****.***.******..**...*...**.....***...***..*..*.*****....******...****..**.***..*..*..**...**.*....'

Test 10

Group: 2

Verdict:

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

correct output
1763

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 46, in <module>
    flight = Flight(cities[int(row[0])-1], cities[int(row[1])-1], row[2])
ValueError: invalid literal for int() with base 10: '.*.*.**..*.*.**.**..*..**...*.*.*.*******..*.*....*...****..*.******.*.***..*...*..**.***.*..*..**..*.**.**.**.*.....*.***.*.**.**....***.*...*..**....***..**..*...*.*.*..**...**..***..**.**..*...****'

Test 11

Group: 3

Verdict:

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

correct output
489611392

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 46, in <module>
    flight = Flight(cities[int(row[0])-1], cities[int(row[1])-1], row[2])
ValueError: invalid literal for int() with base 10: '........................................................................................................................................................................................................'

Test 12

Group: 3

Verdict:

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

correct output
120725884

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 46, in <module>
    flight = Flight(cities[int(row[0])-1], cities[int(row[1])-1], row[2])
ValueError: invalid literal for int() with base 10: '........................................................................................................................................................................................................'

Test 13

Group: 3

Verdict:

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

correct output
1849

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 46, in <module>
    flight = Flight(cities[int(row[0])-1], cities[int(row[1])-1], row[2])
ValueError: invalid literal for int() with base 10: '..*..**.**.**.*.***...**.*..**.*.**....**.***.***..**....*..*.*.****.***.***..*.*...*..***.**..**..*..*.*..*...*..*.**.*.*..*..*......*.....**.*...****....*.*****..**.*..*.**.*.*....*..*....**...*.***'

Test 14

Group: 3

Verdict:

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

correct output
2665

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 46, in <module>
    flight = Flight(cities[int(row[0])-1], cities[int(row[1])-1], row[2])
ValueError: invalid literal for int() with base 10: '***.*....*.*..*....**..*..*.*.**.*...*.***.*..**......*..**.*...*.*****..*..*.*...**.**..*.**.***.**...*.....***.*.**.*.*......****.*.***..***.***..**..*..**.*....*.**.*...*..*..*.......*.***..***...*'

Test 15

Group: 3

Verdict:

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

correct output
5587

user output
(empty)

Error:
Traceback (most recent call last):
  File "input/code.py", line 46, in <module>
    flight = Flight(cities[int(row[0])-1], cities[int(row[1])-1], row[2])
ValueError: invalid literal for int() with base 10: '**.**...*.***.**....**.*....*.........***.*...*******.....**.......*.....*.*..*.*..**.***.******..**.*.**.***..**.****.*....*****.*...*********.*******.*.*.*.***..*.*...*...*....*....*..****.....*****'