시뮬레이션 4

[삼성SW역량][Python/BOJ] 백준 17144 미세먼지 안녕!(시뮬레이션)

와 생각보다 정말 시뮬레이션이 생각해야할게 많고 어렵구나...!!!! 코드 : dx = [1,0,-1,0] dy = [0,-1,0,1] if __name__=="__main__" : r,c,t = map(int,input().split()) mp =[list(map(int,input().split())) for i in range(r)] for i in range(r) : # 공기청정기가 있는 행 알아내기 if mp[i][0] == -1 and mp[i+1][0] == -1 : now = (i,i+1) break for _ in range(t) : # 확산 # 새롭게 확산된 값을 저장할 배열 new = [[0]*c for i in range(r)] for i in range(r) : for j in ra..

[삼성SW역량][Python/BOJ] 백준 14499 주사위굴리기(시뮬레이션)

삼성문제 특 ) 그냥 빡구현 1,2,3,4 번이 동서남북이 아니라 동서북남이다!!! +) 주사위는 지도의 바깥으로 이동시킬 수 없다. 만약 바깥으로 이동시키려고 하는 경우에는 해당 명령을 무시해야 하며, 출력도 하면 안 된다 -> nx,ny를 구하고 지도를 벗어나는지 확인해주어야한다. 코드 : # 동서북남 dx = [0,0,-1,1] dy = [1,-1,0,0] def move(dir) : global x,y nx,ny = x + dx[dir], y + dy[dir] if 0

[삼성SW역량][Python/BOJ] 백준 3190 뱀(시뮬레이션)

시뮬레이션 문제로 문제에서 요구하는 사항을 완성시키면 된다. 뱀은 매 초마다 이동을 하는데 다음과 같은 규칙을 따른다. 먼저 뱀은 몸길이를 늘려 머리를 다음칸에 위치시킨다. 만약 이동한 칸에 사과가 있다면, 그 칸에 있던 사과가 없어지고 꼬리는 움직이지 않는다. 만약 이동한 칸에 사과가 없다면, 몸길이를 줄여서 꼬리가 위치한 칸을 비워준다. 즉, 몸길이는 변하지 않는다. 1. mp를 입력받는다. 2. 사과의 위치를 1으로 표시한다. 3. 방향을 바꿀 시간을 입력받는다. 4. start() 4-1. 덱에 위치를 넣는다. 4-2. 벽 또는 본인 몸에 부딪히지않았다면 방문을 표시한다. 4-3. 만약 사과가 있다면 꼬리를 제거하지않고 없다면 제거한다. 4-4. 만약 현재 시간이 3에서 입력받은 방향을 바꿀 시간..

[삼성SW역량][Python/BOJ] 백준 14891 톱니바퀴(시뮬레이션)

https://www.acmicpc.net/problem/14891 14891번: 톱니바퀴 총 8개의 톱니를 가지고 있는 톱니바퀴 4개가 아래 그림과 같이 일렬로 놓여져 있다. 또, 톱니는 N극 또는 S극 중 하나를 나타내고 있다. 톱니바퀴에는 번호가 매겨져 있는데, 가장 왼쪽 톱니바퀴 www.acmicpc.net 이 문제는 문제와 문제에 나와있는 예시를 잘 읽어야한다. 원래 머리에 생각하고 있는 대로 풀면 틀린다. 처음 풀 때 예시가 잘 이해 안되서 예시가 틀린건가..하고 안봤다가 잘못 이해하고 풀었다. 1. 옆 톱니를 움직인다. (움직인 톱니의 옆친구와 극이 다르면 옆친구도 움직인다.) 2. 해당 톱니를 움직인다. 옆톱니를 움직일 때도 이제는 자신이 해당 톱니가 되어서 옆 톱니를 먼저 확인한다-!! ..