반응형

코딩테스트 연습/백준 50

[백준] 2108번 : 통계학 in python 파이썬

파이썬으로 백준풀기 :: 2108번 통계학 https://www.acmicpc.net/problem/2108 코드 123456789101112131415161718192021222324252627# 평균def mean(v) : return round(sum(v)/n) # 중앙값def median(v) : if n == 1 : return (v[0]) else : return (v[n//2] if n%2!=0 else round((v[n//2]+v[n//2+1])/2)) # n이 홀수일땐 가운데 값 return/ 짝수일땐 가운데 두 개 평균 # 최빈값from collections import Counterdef many_value(v) : if n == 1 : return v[0] c = Counter(v..

[백준] 10989번 : 수 정렬하기 3 in python 파이썬

파이썬으로 백준풀기 :: 10989번 수 정렬하기 3 https://www.acmicpc.net/problem/10989 코드 1234567import sysc = [0]*10000n = int(sys.stdin.readline())for _ in range(n) : c[int(sys.stdin.readline())-1] += 1for i in range(10000) : [print(i + 1) for _ in range(c[i])]cs 이 문제는 아주아주 예민한 문제이다. 메모리가 상당히 적은 부분만 할당되기 때문에 코드를 딱 한 글자만 고쳐도 통과가 되기도, 안 되기도 한다. 애초에 할당되는 메모리가 적기때문에 input을 처음에 다 받아서 저장하면 무조건 메모리 초과가 뜬다. input을 따로 저장..

[백준] 2751번 : 수 정렬하기 2 in python 파이썬 :: heap sort

파이썬으로 백준풀기 :: 2751번 수 정렬하기 2 :: 힙 정렬 https://www.acmicpc.net/problem/2751 merge sort로 풀었던 것에 이어 heap sort로 풀어보았다.>> [백준] 2751번 python with merge sort 바로가기 : https://leedakyeong.tistory.com/entry/%EB%B0%B1%EC%A4%80-2751%EB%B2%88-%EC%88%98-%EC%A0%95%EB%A0%AC%ED%95%98%EA%B8%B0-2-in-python-%ED%8C%8C%EC%9D%B4%EC%8D%AC?category=842565 주의할 점은 같은 코드라도 python3으로 제출하면 시간초과가 나기때문에 pypy3으로 제출해야한다. 코드 123456..

[백준] 1018번 : 체스판 다시 칠하기 in python 파이썬

파이썬으로 백준풀기 :: 1018 체스판 다시 칠하기 https://www.acmicpc.net/problem/1018 코드 12345678910111213141516171819202122232425262728293031def check_BW(ex): cnt1 = 0 for i in range(8): for j in range(8): i_ = (0 if i in [0,2,4,6] else 1) j_ = (0 if j in [0, 2, 4, 6] else 1) if (i_ == 0 and j_ == 0) or (i_ == 1 and j_ == 1) : if ex[i][j] != "B": cnt1 += 1 if (i_ == 0 and j_ == 1) or (i_ == 1 and j_ == 0) : if ex..

[백준] 2798번 : 블랙잭 in python 파이썬 코드 & 설명

파이썬으로 백준 2798번 블랙잭 풀기 https://www.acmicpc.net/problem/2798 코드 12345678910n, m = map(int,input().split())v = list(map(int, input().split()))s = list()for i in range(len(v)) : for j in range((i+1), len(v)) : for z in range((j+1),len(v)) : s.append(sum([v[i],v[j],v[z]]))s = [i for i in s if i0 : print(max(s))cs 모든 경우의 수를 다 구한 다음, 해가 존재할 때 출력한다. 파이썬이 아닌 다른 코드로는 재귀로 풀던데, 백준에서 파이썬은 재귀로 풀면 항상 런타임 에러가 난다.

반응형