전체 글

전체 글

    6064번 파이썬

    import sys input = sys.stdin.readline t = int(input()) for _ in range(t): m,n,x,y=map(int,input().split()) found = False while x k대신에 x에 m을 계속 더한 값을 넣어보고 그 값에 y를 빼줄 때 n으로 나눠서 0이면 해를 구할 수 있음 (x의 범위는 최대한 크게 m*n으로 설정!) import sys input = sys.stdin.readline t = int(input()) for _ in range(t): m,n,x,y=map(int,input().split()) x_=0 y_=0 year=0 item=[[-1,-1]] while True: if x_ < m: x_+=1 else: x_=1 if ..

    1107번 파이썬

    import sys input = sys.stdin.readline N = int(input()) M = int(input()) res = abs(100-N) if M: c_err = input().split() else: c_err=[] for num in range(1000001): solved=True for c in str(num): if c in c_err: solved=False break if solved: res=min(res,len(str(num))+abs(N-num)) print(res)

    1476번 파이썬

    import sys input = sys.stdin.readline E,S,M = map(int,input().split()) se,ss,sm,year=0,0,0,0 while 1: se+=1 ss+=1 sm+=1 year+=1 if se>15: se=1 if ss>28: ss=1 if sm>19: sm=1 if se==E and ss==S and sm==M: print(year) break​

    3085번 파이썬

    두번이나 문제를 잘못보고 풀어서 여러 번 풀어서 나온 답ㅎ!,,, 문제의 의도는 1. 인접한 두칸을 고름 2. 두칸의 사탕을 바꿈 3. 사탕 배열(행, 열) 중 연속으로 긴 사탕이 있는 사탕을 모두 먹음 ex( pyyyp인 max인 경우 y세개를 먹고 최대 사탕 개수는 3개가 됨) copy를 안쓰고 다시 원래 자리로 원위치 시키는 방법도 있지만 copy하는 방법으로 푸니까 코드가 길어짐,, copy는 copy 모듈을 이용해서 shallow copy가 아닌 deepcopy로 구현(다른 copy인 경우 idx 값을 바꾸면 복사한 ary 값도 바뀌기 때문에) import sys input = sys.stdin.readline import copy def counting(mat,n): res=0 for i in..

    2309번 파이썬

    import sys input = sys.stdin.readline ary=[int(input()) for i in range(9)] found = False for i in range(8): if found: break for j in range(i+1,9): sum=0 for item in ary: sum+=item a=ary[i] b=ary[j] sum-=(a+b) if sum ==100: ary.remove(a) ary.remove(b) ary.sort() for item in ary: print(item) found = True break

    6588번 파이썬

    def filtering(n): lists=[True] * n for i in range(2,int(n**0.5)+1): if lists[i]: for j in range(i*2,n,i): lists[j]=False return [i for i in range(2,n) if lists[i]] # 처음엔 에라토스테네스의 체를 이용해서 n보다 작은 소수의 배열을 반환하는 함수를 만들려 했지만 매번 새로 만들어서 그런지 시간 초과가 계속 뜸 따라서 n의 max인 1000000보다 작은 소수 배열을 미리 만들어서 사용 import sys input = sys.stdin.readline num = 1000001 lists=[True] * num for i in range(2,int(num**0.5)+1): if ..

    13458번 파이썬

    import sys input = sys.stdin.readline N=int(input()) A=list(map(int,input().split())) B,C=map(int,input().split()) sum=N for num in A: num -=B if num < 0: # 예외처리를 해주지 않으면 나중에 음수 값이 나오는 경우가 있을 수도 있음. continue if num % C==0: sum+=num//C else: sum+=num//C+1 print(sum)

    비지도 학습

    비지도 학습 정답이 주어지지 않는 데이터 내에서 숨겨진 구조를 파악, 크게 클러스터링과 차원 축소 기법으로 나뉨 클러스터링: 각 개체의 그룹 정보(정답) 없이 유사한 특성을 가진 개체끼리 군집화하는 것 클러스터링 종류 Hard Clustering - 특정 개체가 집단에 포함되는지 여부(교집합이 없음을 의미) 클러스터에 속한다(1), 속하지 않는다(0)으로 표현 - K-means Clustering 알고리즘이 이에 해당 2. Soft Clustering - 특정 개체가 집단에 얼마나 포함되는지 정도로 클러스터에 속하는 정도로 표현 - Gaussian Mixture Model 알고리즘이 이에 해당 클러시터링 목표 군집 간 유사성 최소화 군집 내 유사성 최대화 차원 축소 : 고차원 데이터의 차원을 축소하여 데..

    Matplotlib 기초 학습 내용

    from elice_utils import EliceUtils import numpy as np import pandas as pd import matplotlib.pyplot as plt elice_utils = EliceUtils() fig, ax = plt.subplots() x = np.arange(15) y = x **2 ax.plot( x,y, linestyle=":", marker="*", color="#524FA1" ) # :는 점선 표시 -는 직선 --는 dashed -.는 dashdot # 색깔은 r 도는 red 또는 16진수로 가능 # marker는 .이랑 o , v , s, *이 있음 #축 경계 조정 x = np.linspace(0,10,1000) #순서대로 start,end,ste..

    머신러닝 기초 학습 내용

    머신러닝은 빅 데이터를 분석할 수 있는 강력한 툴, 기존 통계학 및 시각화 방법의 한계를 해결 (예측, 패턴 파악, 추천 시스템) 머신러닝이란 명시적으로 프로그래밍을 하지 않고도 컴퓨터가 학습할 수 있는 능력을 갖게 하는 것 머신러닝은 지도학습, 비지도학습, 강화학습으로 구분 지도학습은 회귀분석(Regression), 분류(Classification)으로 구분 지도학습 vs 비지도학습 예측해야 할 결과에 대한 정답 데이터가 있는지 확인 있으면 지도 없으면 비지도학습 강화학습 같은 경우 학습할 데이터가 필요없음 -> 기계가 스스로 학습할 데이터를 만들고 그 데이터를 바탕으로 학습 지도학습을 구현하기 위해서는 1) 데이터에 대한 이해 2) 머신러닝에 사용하기 위한 데이터 처리법 3) 지도학습 방법 - 회귀 ..