LeeHyunjoo

4153번: 직각삼각형

4153번: 직각삼각형 (acmicpc.net) 4153번: 직각삼각형 입력은 여러개의 테스트케이스로 주어지며 마지막줄에는 0 0 0이 입력된다. 각 테스트케이스는 모두 30,000보다 작은 양의 정수로 주어지며, 각 입력은 변의 길이를 의미한다. www.acmicpc.net import math while('Ture'): a, b, c = sorted(map(int, input().split())) if a==0 and b==0 and c==0: break elif math.pow(a, 2) + math.pow(b, 2) == math.pow(c, 2): print('right') else: print('wrong')

2775번: 부녀회장이 될테야

2775번: 부녀회장이 될테야 (acmicpc.net) 2775번: 부녀회장이 될테야 첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다 www.acmicpc.net >>층과 호수마다 살아야하는 사람 수 0층 1층 2층 3층 4층 1호 1 1 1 1 1 2호 2 3 4 5 6 3호 3 6 10 15 21 4호 4 10 20 35 46 5호 5 15 35 70 116 ex)2층의 3호--> 1층의 1호부터 3호까지의 사람 수를 더한 만큼 사람이 살 수 있다. 즉, 1+3+6명 T = int(input()) for _ in range(T): k=int(input()) #층 n=int(input()) #호 row=[..

4일차(머신러닝 기초)

#간단한 머신러닝 모델 만들어보기 ##공부시간이 성적에 영향을 미칠까??예를 들어 4명의 학생이 있고 4명의 공부시간과 성적은 아래와 같다고 가정하자. 2시간 공부한 학생의 성적=654시간 공부한 학생의 성적=856시간 공부한 학생의 성적=708시간 공부한 학생의 성적=95이 값들을 하나의 직선으로 표현 한다면 어떤 직선을 그려야 할까??먼저, 정확하진 않지만 예측선을 그려본다.양 끝 두 점을 이어 예측선을 그려본다.예측값이 있다면 실제값이 있고 이 둘 사이에는 차이값, 즉 오차가 존재한다.이때, 인공지능은 오차값을 줄여나가는 과정에서 오차가 0인 값을 찾는게 아니라 오차가 가장 적은 값을 찾는 과정이기 때문에 오차 값을 구할때 제곱의 합을 구해도 상관 없다.(절댓값도 사용 가능)오차제곱의 그래프 형태를..

4일차(데이터 분석 및 텍스트마이닝)

#파일 저장하고 가져오기 import pandas as pd pew=pd.read_csv("pew.csv") pew ##pew 데이터는 종교에 따른 소득 데이터 ##위 표는 비효율적이다. 성격이 비슷한 돈에 관한 열이 금액 별로 있어 불필요하게 많다. 돈에 관한 열을 하나로 만든다면 보기에도 좋고 머신러닝 관점에서 봤을 때 데이터가 더 늘어나기 때문에 좋다.(학습시키기에 좋다.) ##같은 성격을 가지고 있는 열들을 하나의 열로 만드는 게 필요하다. #melt 함수를 이용하여 열을 행으로 내리기 pew2=pd.melt(pew,id_vars='religion',var_name='income',value_name='count') pew2 ##melt 함수 : 열을 행으로 내려주는 함수 id_vars 고정할 열..

3일차(데이터 분석 및 시각화)

#seaborn : 파이썬 시각화 라이브러리 #데이터 시각화가 필요한 이유 : 수치로 되어있는 데이터보다 별도의 분석 없이 빠르고 직관적인 이해가 가능 #seaborn라이브러리에 저장된 데이터 가져오기 import seaborn as sns anscombe=sns.load_dataset("anscombe") anscombe ##anscombe는 seaborn 라이브러리에 저장되어있는 데이터 집합 ##anscombe외에 tips라는 데이터 집합도 있음. #특정 열에 접근하기 anscombe[anscombe['dataset']=='I'] ##ansscombe의 dataset열이 I인 값에만 접근 #데이터 저장하고 데이터별로 평균값 구하기 >data1=anscombe[anscombe['dataset']=='I..

3일차(데이터 가공)

#csv파일과 tsv파일의 차이점 csv(Comma-separated values) 데이터를 , (콤마) 로 구분 tsv(Tab-separated values) 데이터를 \n (탭)으로 구분 #pandas를 이용하여 csv파일 불러오기 import pandas as pd df=pd.read_csv('concat_1.csv',sep=',') df #pandas로 tsv 파일 불러오기 df=pd.read_csv('gapminder.tsv',sep='\t') df #head() 함수 df.head() #첫 다섯 줄 불러옴 # tail함수 df.tail() #마지막 다섯줄 불러옴 #columns 함수 >df.columns #컬럼명 출력 Index(['country', 'continent', 'year', 'li..

2일차(데이터 크롤링3)

#네이버금융 홈페이지의 데이터크롤링이 필요한 이유 :현재 네이버금융 페이지의 코스피,코스닥 안에서는 특정한 키워드 검색이 불가능하기 때문에 크롤링을 통해 데이터를 가져온다면 키워드를 검색하거나 오름차순,내림차순 정렬 등이 가능하여 원하는 데이터에 더 쉽게 접근할 수 있음. #코스닥 메뉴의 첫페이지 데이터 가져오기 >import requests >from bs4 import BeautifulSoup >import pandas as pd > >url=requests.get("https://finance.naver.com/sise/sise_market_sum.nhn?sosok=0&page=1") >html=BeautifulSoup(url.text) > >table=html.select('table.type_2..

2일차(데이터 크롤링2)

#url 가져올 때 메인창에서 검색을 해야하는 이유 : 어떤 키워드를 검색하고 메인 창이 아닌 창에서 연속으로 다른 키워드를 검색할 경우, url에 기록 남음. 깔끔한 url 을 가져오기 위해 메인 창에서 검색해야 함. #로또 현재 회차 데이터 가져오기 >import requests >from bs4 import BeautifulSoup >import pandas as pd > > >url=requests.get("https://search.naver.com/search.naver?where=nexearch&sm=top_hty&fbm=1&ie=utf8&query=%EB%A1%9C%EB%98%90") >html=BeautifulSoup(url.text) #text로 번역 >html.select('a._lo..

2292번: 벌집

2292번: 벌집 (acmicpc.net) 2292번: 벌집 위의 그림과 같이 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌 www.acmicpc.net 1/2~7/8~19/20~37/38~61/62~92/... 이런식으로 벌집 구간 나눌 수 있음. 증가 폭은 6의 배수(6,12,18,24...) 구간을 나누는 기준이되는 수를 리스트에 저장 1번째 시도) N = int(input()) A=[1] for i in range(0, 10000000): A.append(A[i] + (i+1) * 6) for i in range(0, 10000000): if A[i] < N < A[i +..