Algorithm475 [파이썬] 백준 30804 : 과일탕후루 (실버2) [파이썬] 백준 30804 : 과일탕후루 (실버2)https://www.acmicpc.net/problem/30804풀이방향성 생각각 시작지점마다 가능한 길이를 찾는다.$NlogN$이하로 해야하므로, 투포인터로 찾는다.각 과일 개수를 카운팅해줘야 하므로 딕셔너리 하나 사용해주기전체코드from collections import defaultdict as ddN = int(input())arr = list(map(int,input().split()))l,r,count = 0,0,0infos = dd(int)answer = 0while r 2: infos[arr[l]] -= 1 if infos[arr[l]] == 0: count -= 1 l += 1 .. 2024. 6. 11. [파이썬] 프로그래머스 : 유사 칸토어 비트열 (레벨3) [파이썬] 프로그래머스 : 유사 칸토어 비트열 (레벨3)https://school.programmers.co.kr/learn/courses/30/lessons/148652풀이방향성 생각범위가 $5^{20}$이라서 그냥은 못푼다.규칙 찾아서 푸는 분할정복 / 재귀 형태가 보인다.전체코드def solution(n,l,r): l -= 1 r -= 1 def dfs(n,l,r): # 0번째 칸토어 비트열 if n == 0: return 1 # n-1번째 칸토어 비트열의 길이 leng = 5**(n-1) count = 0 for i in range(5): # 11011 에서 0 부분은.. 2024. 6. 10. [파이썬] 프로그래머스 : 혼자서 하는 틱택토 (레벨2) [파이썬] 프로그래머스 : 혼자서 하는 틱택토 (레벨2)https://school.programmers.co.kr/learn/courses/30/lessons/160585풀이방향성 생각맵 사이즈가 충분히 작아서 DFS/BFS로 풀 수 있다.BFS로 모든 경우의 수를 해싱으로 기록한다.전체코드from collections import dequedef solution(board): # 가로 세로 대각선 체크하기. 각 턴에 맞는 사람이 완성해야함 def over(s,atk): arr = [s[3*i:3*i+3] for i in range(3)] arr_tr = list(zip(*arr)) if atk%2 == 0: x = 'O' else: x = '.. 2024. 6. 10. [파이썬] 프로그래머스 : 점 찍기 (레벨2) **[파이썬] 프로그래머스 : 점 찍기 (레벨2)https://school.programmers.co.kr/learn/courses/30/lessons/140107풀이방향성 생각원의 방정식 + 그냥 반복문전체코드def solution(k,d): answer = 0 for x in range(0,d+1,k): ylim = (d**2-x**2)**0.5 answer += ylim//k + 1 return answer코멘트레벨0 수준인뎅 2024. 6. 10. 이전 1 ··· 43 44 45 46 47 48 49 ··· 119 다음