목표
> 카카오 코드 페스티벌 2018 본선 문제 풀어보기
> 원래 6시간인데 학습 동아리가 3시간이므로 A,B,C문제만 풀어보기
A번 승부예측
https://www.acmicpc.net/problem/15997
15997번: 승부 예측
첫 번째 줄에 조별리그를 진행할 국가명 네 개가 공백으로 구분되어 주어진다. 주어지는 모든 국가명은 알파벳 대문자로만 구성된 길이가 1 이상 10 이하인 문자열이다. 두 번째 줄부터 일곱 번째 줄까지는 A B W D L 순으로 주어지는데, 전문가들의 예측에 따르면 A와 B가 경기를 진행했을 때 A가 승리할 확률은 W, 비길 확률은 D, 질 확률은 L이라는 의미이다. A, B는 각각 첫 번째 줄에 있는 국가명 중 하나이고, A와 B가 같은 경우는 주어지지
www.acmicpc.net
해결 방법
> 6번 동안의 경기를 바탕으로 나라 * 승률을 연산하여 저장한다.
> 위의 정보를 바탕으로 경우의 수를 계산하여 동점인 경우를 해결한다.
결과
> 틀렸습니다.
내가 생각한 틀린 이유
> 승률이 똑같은 경우(A와 B 두 나라라고 가정)에 A가 이겼을 경우가 쭉 이어져 6경기가 끝났을 경우와 B가 이겼을 경우 6경기가 끝났을 경우를 따로 계산해야 할 것 같다.
코드(틀린 케이스)
country = input().split()
check = dict()
for i in country:
check[i] = 0
for i in range(6):
a,b,w,d,l = input().split()
w,d,l = float(w), float(d), float(l)
check[a] = check[a] + w * 3 + d * 1
check[b] = check[b] + (1 - (w + d)) * 3 + d * 1
check_list = list(check.values())
final = list()
count = 0
for i in check_list:
final.append([count, i])
count += 1
final.sort(key= lambda x : -x[1])
f_list = [0,0,0,0]
flag = max(check_list)
if check_list.count(flag) == 1:
f_list[final[0][0]] = 1/1
check_list.remove(flag)
flag = max(check_list)
if check_list.count(flag) == 1:
f_list[final[1][0]] = 1/1
elif check_list.count(flag) == 2:
f_list[final[1][0]] = 1/2
f_list[final[2][0]] = 1/2
elif check_list.count(flag) == 3:
f_list[final[1][0]] = 1/3
f_list[final[2][0]] = 1/3
f_list[final[3][0]] = 1/3
elif check_list.count(flag) == 2:
f_list[final[0][0]] = 2/2
f_list[final[1][0]] = 2/2
elif check_list.count(flag) == 3:
f_list[final[0][0]] = 2/3
f_list[final[1][0]] = 2/3
f_list[final[2][0]] = 2/3
else:
f_list[final[0][0]] = 2/4
f_list[final[1][0]] = 2/4
f_list[final[2][0]] = 2/4
f_list[final[3][0]] = 2/4
for i in f_list:
print(i)
A번도 풀지 못해서 B와 C는 문제를 보지도 못했다.
소감
> 솔직히 말해서 A번은 그냥 쉽게 풀 수 있다고 생각했는데 못풀어서 놀랐다.
'CNU 학습 동아리 > 2020 동계 학습 동아리' 카테고리의 다른 글
2020 동계 학습 동아리_6회차_2020-02-14(금) (0) | 2020.02.14 |
---|---|
2020 동계 학습 동아리_5회차_2020-02-11(화) (0) | 2020.02.12 |
2020 동계 학습 동아리_4회차_2020-02-10(월) (0) | 2020.02.10 |
2020 동계 학습 동아리_3회차_2020-02-07(금) (0) | 2020.02.07 |
2020 동계 학습 동아리_2회차_2020-02-04(화) (0) | 2020.02.04 |
댓글