목록파이썬 (72)
차밍이
카드2 성공 시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율 2 초 (추가 시간 없음) 128 MB 28612 15057 12620 54.019% 문제 N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 한 장 남을 때까지 반복하게 된다. 우선, 제일 위에 있는 카드를 바닥에 버린다. 그다음, 제일 위에 있는 카드를 제일 아래에 있는 카드 밑으로 옮긴다. 예를 들어 N=4인 경우를 생각해 보자. 카드는 제일 위에서부터 1234 의 순서로 놓여있다. 1을 버리면 234가 남는다. 여기서 2를 제일 아래로 옮기면 342가 된다. 3을 버리면 42가 되고, ..
동전 0 성공 시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율 1 초 256 MB 53997 28653 22442 52.533% 문제 준규가 가지고 있는 동전은 총 N종류이고, 각각의 동전을 매우 많이 가지고 있다. 동전을 적절히 사용해서 그 가치의 합을 K로 만들려고 한다. 이때 필요한 동전 개수의 최솟값을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) 출력 첫째 줄에 K원을 만드는데 필요한 동전 개수의 최솟값을 출력한다. 예제 입력 1 10 4200 ..
데이터 구간별 범주화 pd.cut 데이터 값들을 특정 구간에 따라서 범주화할 때, 사용 범주를 나누고 라벨을 붙여서 범주형 데이터로 변환 가능 연속 데이터를 구간별로 범주화하는 함수 pd.cut 사용 방법 import pandas as pd ages = [0, 10, 15, 13, 21, 23, 37, 31, 43, 80, 61, 20, 41, 32, 100] bins = [0, 15, 25, 35, 60, 100] labels = ['어린이', '청년', '장년', '중년', '노년'] cuts = pd.cut(ages, bins, right=False, labels=labels) cuts >>> [어린이, 어린이, 청년, 어린이, 청년, ..., 노년, 청년, 중년, 장년, NaN] Length: 1..
1. Pandas 자료 구조 판다스에서 사용하는 자료 구조는 두 가지가 있습니다. Series와 DataFrame이 있습니다. Series 생성 시 index 매개 변수를 이용하여 이름을 지정할 수 있습니다. 각 index에 따른 Series 들이 모여서 DataFrame을 구성합니다. 1.1 Series import pandas as pd s = pd.Series([1, 2, 3]) s >>> 0 1 1 2 2 3 dtype: int64 1.2 Dataframe df = pd.DataFrame([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) df >>> 0 1 2 0 1 2 3 1 4 5 6 2 7 8 9 행과 열을 정하지 않으면 0, 1, 2 순서로 형성됩니다. 1.2.1 DataFra..
파이썬에서 함수를 사용할 때 입력 값을 받아서 사용하는 경우가 많습니다. 함수에서 입력 값을 받을 때, 상황에 따라서 입력받는 값의 개수가 달라질 수 있는 경우가 생길 수 있습니다. 예를 들면 내장 함수인 sum과 같은 경우가 있습니다. list 내부의 값들의 sum을 진행할 때, list의 길이에 영향을 받지 않고 모두 합해집니다. 이처럼 다양한 값을 받아서 함수를 사용하기 위한 "매개변수"에 대해서 알아보겠습니다. 1. 위치매개변수 가장 흔하게 사용되는 매개변수 전달 방식 매개변수의 위치에 맞게 값이 전달되는 방식 example def change_location(num1, num2): return num2, num1 change_location(5,10) >>> (10, 5) add_value(5,..
Numpy 기초를 공부하기 2 np.fromfunction def myfunc(x,y): return 10*x + y arr1 = np.fromfunction(myfunc,(5,4), dtype=int) arr2 = np.fromfunction(myfunc,(5,4), dtype=int) arr1, arr2 >>> (array([[ 0, 1, 2, 3], [10, 11, 12, 13], [20, 21, 22, 23], [30, 31, 32, 33], [40, 41, 42, 43]]), array([[ 0, 1, 2, 3], [10, 11, 12, 13], [20, 21, 22, 23], [30, 31, 32, 33], [40, 41, 42, 43]])) np.fromfunction을 사용하면 함수 형식을..
zip함수를 사용하면 여러 그룹의 데이터를 묶어서 출력해줄 수 있습니다. zip 함수 zip()함수는 iterable 객체를 인자로 받아서 사용합니다. 여러 개의 iterable객체를 받은 후 자료형 들을 묶어서 튜플 형태로 출력해줍니다. # zip(*iterable) : 동일한 개수로 이루어진 자료형을 묶어 줌 a = ['one', 'two', 'three'] b = ['a', 'b', 'c'] list(zip(a, b)) >>> [('one', 'a'), ('two', 'b'), ('three', 'c')] a라는 리스트와 b라는 리스트의 값들이 index 순서에 따라서 묶어진 것을 확인할 수 있습니다. # 두 리스트의 요소 끄집어내기 # zip 함수 사용한 방법 for val1, val2 in zi..
enumerate함수를 사용하면 리스트의 요소와 인덱스를 같이 가져올 수 있다. a = ['one', 'two', 'three'] list(enumerate(a)) >>>[(0, 'one'), (1, 'two'), (2, 'three')] enumerate를 사용하면 순서를 0번부터 붙여주는 것을 확인할 수 있습니다. enumerate에서 값을 튜플 형식으로 인덱스 값과 리스트의 변수 값을 가져오는 것을 확인할 수 있습니다. # 리스트의 요소와 인덱스를 가져오기 a = ['one', 'two', 'three'] for index in range(len(a)): print(index, a[index]) >>> 0 one 1 two 2 three # enumerate 함수를 사용한 방법 a = ['one',..
목차 1. Python Selenium 설치하기 다른 라이브러리를 설치하는 것과 동일합니다. pip 또는 conda 명령어를 사용해서 설치해주세요. pip install selenium conda install selenium 2. Chrome Driver 설치하기 Selenium을 사용해서 웹 자동화를 위해 크롬 웹 드라이버를 설치해야합니다. 2.1. 크롬 버전 확인하기 크롬을 실행한 후 오른쪽 위에 점 3개 -> 도움말 -> Chrome 정버를 선택합니다. 그러면 크롬 버전을 바로 확인할 수 있습니다. 저는 90.0.4430.72 버전을 사용하고 있는 것을 확인할 수 있습니다. 2.2. 크롬 드라이버 다운로드 ChromeDriver - WebDriver for Chrome 이라는 사이트에 들어가서 D..
목차 1. a-ha.io 는 무엇인가? 쉽게 애기하면 네이버 지식인과 동일하다 생각하면 됩니다. 궁금한 것을 각 분야의 전문가들에게 질문하고 답변을 받습니다. 질문에 답변을 하려면 해당 분야의 전문가임을 인증해야합니다. 이러한 질문과 답변을 블록체인에 담아 사라지지 않고 네트워크상에 계속 기록될 수 있도록 하는 서비스입니다. 2. AHT 코인을 어떻게 얻을 수 있는가 아하 코인을 얻는 방법은 해당 A-ha의 지식 서비스를 활성화하면 얻을 수 있습니다. 하루에 발행되는 아하코인은 25,000개 이것을 질문 or 답변 등의 다양한 활동을 통해 얻는 점수를 바탕으로 회원들이 나누어 가지게 됩니다. 3. 자동 출석 체크 A-ha 서비스를 활성화시키기 위해서 자체적으로 출석체크를 하면 보상으로 아하코인을 지급합니..