본문 바로가기

분류 전체보기

(469)
[EP 078] 동전 나누기 문제 78 : p(n)을 n개의 동전을 무더기로 나누는 경우의 수라고 하자. 예를 들어서, 5개의 동전이 있다면, 다음과 같이 7가지 방법이 있어서, p(5) = 7이 된다. ooooo oooo o ooo oo ooo o o oo oo o oo o o o o o o o o 해법 : Q(n, m) 을 n개의 동전을 나눌 때 가장 큰 무더기를 이루는 갯수가 m개인 경우의 수라고 한다. 위 예에서 보면, Q(5,5) = 1 Q(5,4) = 1 Q(5,3) = 2 Q(5,2) = 2 Q(5,1) = 1 이 되는 것을 알 수 있다. 이렇게 정의한 Q(n, m)에서 다음과 같은 식이 항상 성립함을 알 수 있다. Q(n, n) = 1 Q(n, 1) = 1 m Q(n, m) = sum Q(n-m, i) i = 1 마지..
ipython : Exception [WinError 995] 스레드 종료 또는 응용 프로그램 요청 때문에 I/O 작업이 취소되었습니다 윈도우 커맨드 프롬프트에서 파이썬 간단한 테스트를 해보기 위해 ipython 을 설치하고, ipython 프롬프트로 들어가서, pd.read_csv 를 수행해 보았는데, 아래와 같은 에러가 발생했다. In [3]: df = pd.read_csv("final_grade.txt") In [4]: df Out[4]: 0 Lee 57 76 65 98 87 86 56 69 61 51 1 Cha 98 55 67 91 61 78 95 98 90 75 2 Kang 79 100 84 53 60 59 93 53 55 75 Unhandled exception in event loop: File "C:\Programs\Python3864\lib\asyncio\proactor_events.py", line 768, in _lo..
[Python|초보] 난수행렬 만들기 n 을 입력받아 0~99 의 난수로 이루어진 n x n 행렬을 반환하기 >>> import numpy as np >>> >>> np.random.randint(0, 100, size=(3, 3)) array([[32, 65, 6], [35, 66, 43], [89, 14, 90]]) >>> np.random.randint(0, 100, size=(2, 2)) array([[87, 7], [22, 97]]) >>> n = int(input()) 4 >>> mat = np.random.randint(0, 100, size=(n, n)) >>> mat array([[53, 62, 9, 84], [62, 22, 75, 72], [86, 68, 43, 14], [97, 59, 20, 84]])
2021년 5월 konlpy 설치시 문제점들 konlpy 를 오랜만에 설치하고 테스트해 보았다. 설치시에 문제점들이 발견되어 정리하여 공유한다. 테스트는 윈도우에서 수행하였고, openjdk 가 (adoptopenjdk를 이용) 깔려 있으며, JAVA_HOME 과 PATH 설정도 되어 있는 상태이다. 1. python 3.7 새롭게 3.7 가상환경을 만들었다. py -3.7 -m venv v3764 해당 가상환경에 들어가서 konlpy 를 설치했다. c:\PYENVS> v3764\Scripts\activate (v3764) c:\PYENVS> pip install konlpy python 인터프리터로 들어가 konlpy 헬로월드를 해 보자. 에러가 발생한다. (v3764) C:\PYENVS>python Python 3.7.9 (tags/v3.7.9..
[Python] TypeError: unsupported operand type(s) for 파이썬 초보가 겪을 수 있는 에러입니다. unsupported operand type : 지원되지 않는 피연산자 타입 으로 번역이 됩니다. 파이썬의 기본연산이 불가능한 타입끼리 연산을 하려고 할 때 발생합니다. 예를 들어, 문자열에 숫자를 더하거나 뺄 수는 없을 것입니다. 이럴 때 발생합니다. 예를 몇 개 봅시다. >>> 1 + "3" Traceback (most recent call last): File "", line 1, in 1 + "3" TypeError: unsupported operand type(s) for +: 'int' and 'str' 숫자 1과 문자열 "3"을 더하려 했기 때문에 에러가 발생했습니다. >>> a = input() 3 >>> a '3' >>> 1 + a Tracebac..
카마이클 수 ############################################ # ISBN89-7914-288-9 Programming Challenges # problem 50 : uva 10006 # Carmichael Numbers ############################################ TRUE = 1 FALSE = 0 def pow_mod(a, b, m): '''get the value of a**b mod m''' ret = 1 for i in range(b) : ret = ret*a ret = ret%m return ret def IsPrime(n): if n == 1 : return FALSE i = 2 while i*i
[C,Py|초급] 1부터 1000까지의 합 출력하기 #include int main() { printf("%d", 1+2+3+4+5+6+7+8+9+10+11+12+13+14+15+16+17+18+19+20+21+22+23+24+25+26+27+28+29+30+31+32+33+34+35+36+37+38+39+40+41+42+43+44+45+46+47+48+49+50+51+52+53+54+55+56+57+58+59+60+61+62+63+64+65+66+67+68+69+70+71+72+73+74+75+76+77+78+79+80+81+82+83+84+85+86+87+88+89+90+91+92+93+94+95+96+97+98+99+100); return 0; } 누구라도 이해할 수 있는 간단한 코드. 물론 이걸 다 치려면 힘들다. 그래서 파이썬으로 이 소스를 생성..
파이썬 xlrd.biffh.XLRDError: Excel xlsx file; not supported 파이썬으로 엑셀파일을 다루는 코드가 아래와 같은 에러메시지를 발생하며 돌아가지 않았다. 에러메시지로 구글링을 하여보니 xlrd 패키지 (엑셀파일 읽기에 사용되는 패키지) 가 이제는 xls 파일 이외의 파일형식( xlsx 같은 )을 지원하지 않는다고 한다. 스택오버플로우에 대응법이 있어서 번역해 놓는다. stackoverflow.com/a/65266270/100093 xlrd.biffh.XLRDError: Excel xlsx file; not supported I am trying to read a macro-enabled Excel worksheet using pandas.read_excel with the xlrd library. It's running fine in local, but when I t..