STUDY/Algorithm 402

[백준] 13706 제곱근 python

www.acmicpc.net/problem/13706 13706번: 제곱근 첫째 줄에 양의 정수 N이 주어진다. 정수 N의 제곱근은 항상 정수이며, N의 길이는 800자리를 넘지 않는다. www.acmicpc.net # 내가 푼 방식 from math import isqrt print(isqrt(int(input()))) sqrt로도 해봤는데 에러가 났다. 자리수가 커서 소수점이 생기면 오버플로우 에러가 뜬다고 한다. 그래서 integer인경우에 사용 가능한 isqrt가 있다고 해서 사용했고 통과했다. 사실 이렇게 푸는 문제는 아닌것 알고 있었다. 이분탐색을 제대로 사용하지 못해 이렇게 시도했다 # 이분탐색 n = int(input()) low = 1 high = n while 1: mid = (low ..

STUDY/Algorithm 2021.03.25

[백준] 12907 동물원

www.acmicpc.net/problem/12907 12907번: 동물원 동물원에 동물이 N마리 있고, 1번부터 N번가지 번호가 매겨져 있다. 이 동물원에 동물은 토끼나 고양이밖에 없고, 모든 동물의 키는 다 다르다. 수빈이는 토끼와 고양이를 구분할 수 없지만, 토끼 www.acmicpc.net N = int(input()) ans_list = list(map(int, input().split())) ans_dict = dict(zip(range(41),[0] * 41)) for i in range(N): index = ans_list[i] ans_dict[index] += 1 len1 = 0 for i in range(41): if ans_dict[i] == 0: len1 = i break else:..

STUDY/Algorithm 2021.03.25

[백준] 1149 RGB거리

www.acmicpc.net/problem/1149 1149번: RGB거리 첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나 www.acmicpc.net N = int(input()) total = [[0]*3 for _ in range(N + 1)] for i in range(1, N + 1): x, y, z = list(map(int, input().split())) if i == 1: total[i] = [x, y, z] else: total[i][0] = min(total[i - 1][1], total[i - 1][2]) + x to..

STUDY/Algorithm 2021.03.23

[백준] 9461 파도반 수열

www.acmicpc.net/problem/9461 9461번: 파도반 수열 오른쪽 그림과 같이 삼각형이 나선 모양으로 놓여져 있다. 첫 삼각형은 정삼각형으로 변의 길이는 1이다. 그 다음에는 다음과 같은 과정으로 정삼각형을 계속 추가한다. 나선에서 가장 긴 변의 www.acmicpc.net dp = [0, 1, 1, 1, 2, 2, 3, 4, 5, 7, 9] for tc in range(int(input())): N = int(input()) for i in range(len(dp), N + 1): dp.append(dp[i - 1] + dp[i - 5]) print(dp[N]) dp 문제라고 하기엔 너무 쉽다. 내가 원한건 이런문제가 아니었는데... 쉬운건 빠르게 넘어가야겠다

STUDY/Algorithm 2021.03.23

[백준] 1904 01타일

www.acmicpc.net/problem/1904 1904번: 01타일 지원이에게 2진 수열을 가르쳐 주기 위해, 지원이 아버지는 그에게 타일들을 선물해주셨다. 그리고 이 각각의 타일들은 0 또는 1이 쓰여 있는 낱장의 타일들이다. 어느 날 짓궂은 동주가 지원이 www.acmicpc.net N = int(input()) dp = [0, 1, 2] + [0] * (N - 2) for i in range(3, N + 1): dp[i] = (dp[i-1] + dp[i-2]) % 15746 print(dp[N]) 피보나치 수열인것같아서 넣었는데 메모리 초과가 떴다. 범위를 확인해보니 최대범위는 1,000,000이 되는데 피보나치 수열은 일정이상만 가도 수가 많이 커져서 메모리를 많이 잡아먹는다. dp에 할당할..

STUDY/Algorithm 2021.03.23

[SWEA] 1767 프로세서 연결하기 python

swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV4suNtaXFEDFAUf&categoryId=AV4suNtaXFEDFAUf&categoryType=CODE&problemTitle=SW&orderBy=FIRST_REG_DATETIME&selectCodeLang=ALL&select-1=&pageSize=10&pageIndex=3 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com import sys sys.stdin = open('./sample_input_1.txt', 'r') for tc in range(1, int(input()) +..

STUDY/Algorithm 2021.03.17

[SWEA] 4013 특이한자석

swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWIeV9sKkcoDFAVH SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com from collections import deque for tc in range(1, int(input()) + 1): k = int(input()) magnet = [0] + [deque(list(map(int, input().split()))) for _ in range(4)] # 접점 (1-2,2-6),(2-2,3-6),(3-2,4-6) # N극 0, S극 1 # 시계방향 1, 반시계 -1 for i in..

STUDY/Algorithm 2021.03.16