알고리즘/알고리즘_백준 73

[Python][백준] 2292. 벌집

링크🔗https://www.acmicpc.net/problem/2292🗒️파이썬 내 코드 풀이N = int(input())lst = [1]K = n = 1while True : K = K + (6*n) lst.append(K) n += 1 if K > int(1e10): breakif N != 1 : for i in range(len(lst)-1): if lst[i] 1. 벌집을 하나 하나 보면 규칙성을 찾을 수 있다.첫번째 레이어 : 0~1 두번째 레이어 : 2~7세번째 레이어 : 8~19네번째 레이어 : 20~38. . .  2. 규칙성을 찾아서 식을 작성 해주었고, 각 레이어별 범위를 리스트로 만들어 준다. 3. 범위 리..

[Python][백준] 23971. ZOAC 4

링크🔗https://www.acmicpc.net/problem/23971 🗒️파이썬 코드 풀이H,W,N,M = map(int,input().split())cnt_M = cnt_N = 0n_M = n_N = 1 while True: cnt_M += 1 n_M += (M+1) if W  1.cnt_M, cnt_N 은 배치 가능한 수를 카운트 한 값이다. 2. n_M, n_N은  M과 N 씩 누적해서 띄워진 값이다. 3. while문에서 if문의 조건이 만족 할 때 까지 돌린 후 cnt_N,과 cnt_M을 추출해서 곱한다.  📌  문제 코멘트처음에 이 문제를 보고 ni,nj 방식을 쓸까도 고민을 했지만, 그다지 어려운 문제는 아니였다.(사실 변수에 대해 크게 고민하지는 않았다...) 참..

[Python][백준] 1002. 터렛

링크🔗https://www.acmicpc.net/problem/1002 🗒️파이썬 코드 풀이import mathN = int(input())for _ in range(N) : x1, y1, r1, x2, y2, r2 = list(map(int, input().split())) d = math.sqrt((x1-x2)**2 + (y1-y2)**2) # 두 원의 거리 if d==0 and r1==r2: print(-1) elif abs(r1-r2)==d or r1+r2==d: print(1) # 내접 또는 외접 elif abs(r1-r2) 1.  d = 0, r1=r2 인 경우에 겹치는 점(마린)이 있을 수 있는 경우의 수는 무한 2. 내접 또는 외접인 경우  3. 두 원에..