Task: | Lehmät |
Sender: | Finnduino |
Submission time: | 2022-10-31 21:38:20 +0200 |
Language: | Python3 (PyPy3) |
Status: | READY |
Result: | 100 |
group | verdict | score |
---|---|---|
#1 | ACCEPTED | 28 |
#2 | ACCEPTED | 72 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | ACCEPTED | 0.04 s | 1, 2 | details |
#2 | ACCEPTED | 0.04 s | 1, 2 | details |
#3 | ACCEPTED | 0.04 s | 1, 2 | details |
#4 | ACCEPTED | 0.04 s | 1, 2 | details |
#5 | ACCEPTED | 0.04 s | 1, 2 | details |
#6 | ACCEPTED | 0.05 s | 2 | details |
#7 | ACCEPTED | 0.05 s | 2 | details |
#8 | ACCEPTED | 0.05 s | 2 | details |
#9 | ACCEPTED | 0.05 s | 2 | details |
Code
split = input().split()x = int(split[1])y= int(split[0])map_string = ""for p in range(1, y+1, 1):map_string += input()map_string = [*map_string.strip()]counter = 0inFence = FalsecowCounter = 0wallCount = 0inWall = Falsedef flipState():global inFenceif inFence:inFence = Falseelse:inFence = True#Iterate through all the values of the arrayfor yCounter in range(0,y,1):for xCounter in range(0,x,1):#Checks if iterating through pen wall, and skips accordinglyif map_string[counter] == "*" and map_string[counter+1]=="*":#Making sure if no outline around penif map_string[counter] == "*" and map_string[counter+1]=="*" and map_string[counter+2]=="*":yCounter +=1counter = (yCounter)*xwallCount +=1inWall = Trueif(wallCount > 1):breakif(not inWall):#Checks if current character is a wall and flips the state accordinglyif (map_string[counter-1] != "*" and map_string[counter] == "*" and map_string[counter+1] != "*"):flipState()elif (map_string[counter-1] == "*" and map_string[counter] == "*" and map_string[counter+1] != "*"):flipState()elif (map_string[counter] == "*"):flipState()#Looks for cowsif inFence and map_string[counter] == "@":cowCounter +=1counter += 1else:inWall = Falseprint(cowCounter)
Test details
Test 1
Group: 1, 2
Verdict: ACCEPTED
input |
---|
3 3 *** *.* *** |
correct output |
---|
0 |
user output |
---|
0 |
Test 2
Group: 1, 2
Verdict: ACCEPTED
input |
---|
3 3 *** *@* *** |
correct output |
---|
1 |
user output |
---|
1 |
Test 3
Group: 1, 2
Verdict: ACCEPTED
input |
---|
5 10 ...@...... ..******.. @.*@@@@*.@ ..******.. ... |
correct output |
---|
4 |
user output |
---|
4 |
Test 4
Group: 1, 2
Verdict: ACCEPTED
input |
---|
10 10 @@...@.@@@ ..@@.@@..@ @.*******@ ..*@....*. ... |
correct output |
---|
11 |
user output |
---|
11 |
Test 5
Group: 1, 2
Verdict: ACCEPTED
input |
---|
10 10 ********** *@@@@@@@@* *@@@@@@@@* *@@@@@@@@* ... |
correct output |
---|
64 |
user output |
---|
64 |
Test 6
Group: 2
Verdict: ACCEPTED
input |
---|
100 100 .........................@....... |
correct output |
---|
60 |
user output |
---|
60 |
Test 7
Group: 2
Verdict: ACCEPTED
input |
---|
100 100 ..@@..........@......@....@@..... |
correct output |
---|
1507 |
user output |
---|
1507 |
Test 8
Group: 2
Verdict: ACCEPTED
input |
---|
100 100 .@..@@..@@.@..@..@..@@..@..@..... |
correct output |
---|
3348 |
user output |
---|
3348 |
Test 9
Group: 2
Verdict: ACCEPTED
input |
---|
100 100 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@... |
correct output |
---|
7225 |
user output |
---|
7225 |