★Implementation&Simluation Upper-Advanced I - 1 Solved★
★ 19237 어른 상어 ★ import sysinput=sys.stdin.readlinefrom collections import dequeN,M,k=map(int,input().split()) #NxNsize / M sharks / smell limit ktrace=[]smell=[[0]*N for _ in range(N)]sharks=deque()shark_ds_priorities=[]#shark_dsdx,dy=['?',-1,1,0,0],['?',0,0,-1,1]num_of_sharks=Mfor i in range(N): l=list(map(int,input().split())) trace.append(l) for j in range(N): if l[j] != 0: ..
BOJ/🥇
2024. 3. 3.
★Two-Pointers Advanced I - 10 Solved★
★ 15961 회전 초밥 ★ import sysinput=sys.stdin.readlinefrom collections import defaultdictN,d,k,c=map(int,input().split())kinds=[int(input()) for _ in range(N)]y,ans,cnt,freq=0,0,0,defaultdict(int)for x in range(N): while cnt 🧦 x와 y 투 포인터 모두 첫 초밥부터 시작하되, k개의 묶음마다 진행하므로(슬라이딩 윈도우 포스팅 참조), x가 전체 초밥 x(1)부터 x(8)까지 움직일 때 y의 끝은 y(1) 부터 y(11)까지 (k=4일 경우) 움직인다 / dictionary 활용해 freq로 종류 개수 update하며 freq.ke..
BOJ/🥇
2024. 2. 11.
★Implementation&Simluation Advanced I - 5 Solved★
★ 21610 마법사 상어와 비바라기 ★ import sysinput=sys.stdin.readlinefrom collections import dequeN,M=map(int,input().split())baskets=[]for _ in range(N): baskets.append(list(map(int,input().split())))moves=[]for _ in range(M): moves.append(tuple(map(int,input().split())))clouds=deque([[N-2,0],[N-2,1],[N-1,0],[N-1,1]])#(1) clouds movingdx,dy=[0,-1,-1,-1,0,1,1,1],[-1,-1,0,1,1,1,0,-1]for move in moves: ..
BOJ/🥇
2024. 1. 28.