본문 바로가기

algorithm

Part 2: 컴퓨터 비전 소개 2.1 패션 MNIST 데이터셋원래의 MNIST 데이터셋은 0 ~ 9까지의 손으로 쓴 숫자 이미지로 이루어진 데이터셋임패션 MNIST는 MNIST와 샘플 개수, 이미지 크기, 클래스 개수가 동일함이미지는 흑백이므로 0 ~ 255 사이의 픽셀 값으로 구성되며 그리드의 크기는 28 X 28이다.2.2 컴퓨터 비전을 위한 뉴런각 이미지는 0~255 사이의 값이 784개 값으로 구성됨 -> 이 값이 X데이터셋 이미지 종류는 10가지 -> 이 범주가 y하지만 이전처럼 선형적인 y를 x의 함수로 나타내기엔 힘듬그림에서 위에 있는 상자를 픽셀 하나로 생각할 수 있는데, 이 값을 뉴런의 층으로 로드한다그림에는 첫 번째 뉴런에 로드된 것을 보여줌각 뉴런은 랜덤하게 초기화된 가중치와 절편을 가지며 각 뉴런의 출력값을 더해.. 더보기
알고리즘 기초 1/2 301-수학(연습): 8진수 2진수 8진수 2진수(python 1212)이전에 푼 문제와 동일하다8진수를 10진수로 바꿔주고 이를 2진수로 변환해준다n = int(input(), 8)print(bin(n)[2:]) 더보기
알고리즘 기초 301-수학(연습): 2진수 8진수 2진수 8진수(python 1373)진법 표현방법만 알면 쉽게 해결가능한 문제임2진수를 10진수로 바꾸고 그걸 다시 8진수로 바꿔준다t = int(input(), 2)print(oct(t)[2:]) 더보기
알고리즘 기초 1/2 301-수학(연습): 숨바꼭질 6 숨바꼭질 6(python 17087)사실 문제 이해가 잘 되지는 않는다각 동생들의 위치를 지나치지 않기 위해서 어느 간격으로 움직일지..?로 대충 이해함그래서 최대 공약수를 구하는 문제import mathN, S = map(int, input().split())A = list(map(int, input().split()))for i in range(len(A)): A[i] = abs(S - A[i])result = A[0]for i in range(1, N): result = math.gcd(result, A[i])print(result) 더보기
알고리즘 기초 1/2 301-수학(연습): GCD 합 GCD 합(python 9613)import math를 해서 math.gcd()를 활용하면 굉장히 쉽게 해결가능하다import sysimport matht = int(sys.stdin.readline())for i in range(t): n = list(map(int, sys.stdin.readline().split())) sum = 0 for j in range(1, len(n)): for k in range(j + 1, len(n)): sum = sum + math.gcd(n[j], n[k]) print(sum)for문에서 1부터 n까지면 마지막은 포함안된다는걸 자꾸 생각못한다 더보기
알고리즘 기초 1/2 300-수학: 조합 0의 개수 조합 0의 개수(python 2004)역시나의 시간초과 풀이n, m = map(int, input().split())a = 1b = 1for i in range(n - m): a = a * (i + m + 1) b = b * (i + 1)c = a//bcnt = 0while c % 10 == 0: cnt = cnt + 1print(cnt)이 문제를 직접 조합을 계산하려하면 시간초과가 발생한다-> 따라서 2X5의 개수를 세어주자from sys import stdinn, m = map(int, stdin.readline().split())def count_k(n, k): result = 0 temp = k while temp 여기서 nCm은 n! / m!(n-m)!이므로 이를.. 더보기
알고리즘 기초 1/2 300-수학: 팩토리얼 0의 개수 팩토리얼 0의 개수(python 1676)실버치곤 쉬웟다근데 이상한짓해서 헤멤N = int(input())pac = 1if pac != 0: for i in range(1, N+1): pac = pac * ipactorial = str(pac)[::-1]cnt = 0for i in pactorial: if i == '0': cnt = cnt + 1 else: breakprint(cnt) 더보기
알고리즘 기초 1/2 300-수학: 팩토리얼 팩토리얼(python 10872)많이 해봣던 팩토리얼 문제.N = int(input())pac = 1if N != 0: for i in range(1, N+1): pac = pac * iprint(pac) 더보기