전체 글52 [BOJ] 2108 통계학 - python 백준 2108번 통계학 문제이다. 계속해서 시간 초과가 나서 좀 오래 걸렸다. 최빈값을 구하는 부분에서 계속 시간 초과가 발생했다. 1차 코드 N = int(input()) array = [] for _ in range(N): array.append(int(input())) # 산술평균 print(round(sum(array)/N)) # 중앙값 array.sort() print(array[N//2]) # 최빈값 dict = {} # 전체 리스트의 값 별로 개수를 세어 딕셔너리 형태로 저장한다. for _ in array: dict[_] = array.count(_) # value값을 기준으로 내림차순으로 정렬한다. sorted_dict = sorted(dict.items(),key = lambda ite.. 2022. 3. 15. [python] 딕셔너리에서 최대값의 키 값 추출하기 num = {'peanuts': 2, 'candy': 1, 'icecream': 2, 'apple': 1, 'chocolate': 2} 위 num과 같은 딕셔너리가 있다. 해당 딕셔너리에서 최대 값(max value)의 키 값을 찾고자 한다. 이 경우 아래와 같이 리스트 컴프리헨션을 사용할 수 있다. max_list = [key for key,value in num.items() if max(num.values()) == value] num 딕셔너리에서 최대 value를 가진 키 값들을 리스트에 저장한다. 2022. 3. 4. [BOJ] 1302 베스트 셀러 - python T = int(input()) array = [] # 판매 책 목록을 입력 받는다. for _ in range(T): array.append(input()) # 판매 목록 중 중복을 제외하고 저장한다. set_array = set(array) num = {} # 중복 없는 판매 목록을 돌며 권수를 세어 num에 저장한다. for i in set_array: num[i] = array.count(i) # num 딕셔너리에서 최대 value만 추출하여 max_list에 key값을 저장한다. max_list = [k for k,v in num.items() if max(num.values()) == v] # 리스트를 사전 순으로 정렬한다. max_list.sort() print(max_list[0]) 2022. 3. 4. [BOJ] 11656 접미사 배열 - python S = input() array = [] for _ in range(len(S)): a = S[_:] array.append(a) array.sort() for _ in array: print(_) 2022. 3. 3. [python] 실행 시 ModuleNotFoundError: No module named 'bluetooth' 해결법 python 파일을 실행시켰고, ModuleNotFoundError: No module named 'bluetooth'라는 에러가 출력되었다. bluetooth 모듈은 라즈베리 파이 OS에 기본적으로 탑재되어있는 줄 알았는데 추가로 설치해줘야 했다. sudo apt-get install bluetooth libbluetooth-dev sudo python3 -m pip install pybluez 2022. 2. 7. [Git] Git Hub 사용하기 1. 깃 허브에서 레포지토리를 생성한다. 2. 깃허브에서 주소를 복사한다. 3. 깃허브와 연결하고 싶은 로컬 폴더로 와서 git bash를 열어준다. 4. git init 5. git remote add origin "복사한 레포지토리 주소" 6. git checkout main (레포지토리에서는 브랜치를 main으로 만들어주지만, git bash에서는 기본적으로 브랜치명이 master로 되어있다. 때문에 main으로 브랜치를 바꿔줘야한다.) 7. git add 파일명 8. git commit -m "커밋할 메세지" 9. git push 레포지토리에 이미 자료가 있다면, 방법 1. 빈 로컬 폴더에 clone 방법 2. remote 후 pull로 가져오기 git checkout main이 안될 때, git.. 2022. 1. 17. [BOJ] 1463번 1로 만들기 - python 오늘 푼 문제는 백준 1463번 1로 만들기다. DP(Dynamic Programming)로 해결해야하는 문제다. 동적 프로그래밍은 큰 문제의 해답에 작은 문제의 해답이 포함되어있고, 이를 재귀호출 알고리즘으로 구현하면 지나친 중복이 발생하는 경우에 이 재귀적 중복을 해결하는 방법을 뜻한다. 이러한 문제들은 최적 부분 구조(Optional Substructure)를 가졌다고 한다. 아래는 1463번 문제이다. 대충 생각하면 단순하게 조건문을 사용하여 2로 나눠지는 경우, 3으로 나눠지는 경우, 아닐 때로 나누어서 풀면 될 것이라고 생각할 수도 있다. 그러나 힌트에 나와있듯 10을 /3 -> /2 -> -1 순서로 계산한다면 10 / 2 = 5 5 - 1 = 4 4 / 2 = 2 2 / 2 = 1 이러한 .. 2021. 12. 31. plt 축 제거하고 이미지만 저장하기 matplotlib.pyplot.axis('off')명령을 사용해 축을 숨길 수 있다. #a는 숫자 이미지를 나타내는 배열임 plt.imshow(a.reshape(28,28), cmap='Greys') #이미지 배열을 수정하고, 그레이 스케일로 변환 plt.axis('off') #축 사용하지 않음 plt.savefig(fname='./AA_samples/photo.png', bbox_inches='tight', pad_inches=0) #주변의 패딩 제거 다음과 같이 축과 공백이 제거되어 저장된 사진을 확인할 수 있다. bbox_inches='tight', pad_inches=0 부분을 제거하고 저장하면, c_x_x의 모습으로 저장된다. 2021. 10. 3. [D-2] 9/10 토익 공부 토익 공부를 너무너무 안했다. 망한 것 같다.. *문법 (3형식) consider + 목적어 (명사, 동명사) (5형식) consider + 목적어 + 목적보어(to R, 명사, 형용사) -> consider 바로 뒤에 빈칸에는 명사나 동명사가 와야한다 부사 자리: 1. to __ R 2. S __ V 3. __ SVO __ 4. be __ p.p to + 목적격 관.대 how + 완.문 what 앞에는 명사가 없다 + 불.문 주격관.대 + be 동사 = 생략 가능 an account who is competent = an account competent *단어 promptly 정확히, 제시간에 correspond 동일하다, 일치하다 on account of ~에 따라 urge 강력히 권고하다 perso.. 2021. 9. 10. 이전 1 2 3 4 5 6 다음