코딩 테스트

    구현) 1917.정육면체 전개도

    문제 : https://www.acmicpc.net/problem/1917 1917번: 정육면체 전개도 세 개의 입력 데이터가 주어지며, 각각의 입력 데이터는 여섯 개의 줄로 이루어져 있다. 각 데이터는 여섯 개의 줄에 걸쳐 여섯 개의 숫자가 빈 칸을 사이에 두고 주어진다. 숫자는 0 또는 1로 이 www.acmicpc.net # 정육면체 전개도는 총 11가지 cubes = [ [[1,0,0,0], [1,1,1,1], [1,0,0,0]], [[0,1,0,0], [1,1,1,1], [1,0,0,0]], [[0,0,1,0], [1,1,1,1], [1,0,0,0]], [[0,0,0,1], [1,1,1,1], [1,0,0,0]], [[0,1,0,0], [1,1,1,1], [0,1,0,0]], [[0,0,1,0]..

    구현) 3190. 뱀

    문제 : https://www.acmicpc.net/problem/3190 3190번: 뱀 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임 www.acmicpc.net # 21/09/15 피드백 1. 맵 정보가 1~n인 것을 감안 2. 큐 자료구조 활용 3. 맵 정보와 함께 종료 조건 세밀하게 조정 # 풀이 1번 ( 21/06/12 ) n = int(input()) k = int(input()) data = [[0] * (n + 1) for _ in range(n + 1)] # 맵 정보 info = [] # 방향 회전 정보 # 맵 정보(사과 있는 곳은 1로 표..

    구현)16931.겉넓이 구하기

    문제 출처 : https://www.acmicpc.net/problem/16931 16931번: 겉넓이 구하기 크기가 N×M인 종이가 있고, 종이는 1×1크기의 칸으로 나누어져 있다. 이 종이의 각 칸 위에 1×1×1 크기의 정육면체를 놓아 3차원 도형을 만들었다. 종이의 각 칸에 놓인 정육면체의 개수가 주어 www.acmicpc.net 풀이 # 솔루션 : 3차원으로 생각하자. 2차원에서 dx,dy, nx,ny 를 쓰는 것처럼, 3차원으로 dx,dy,dz, nx,ny,nz를 써서 해결하자 n,m = map(int,input().split()) a=[] for i in range(n): a.append(list(map(int,input().split()))) ans=0 dx=[1,-1,0,0,0,0] dy..

    구현)2290.LCD Test

    문제 출처 : https://www.acmicpc.net/problem/2290 2290번: LCD Test 첫째 줄에 두 개의 정수 s와 n이 들어온다. (1 ≤ s ≤ 10, 0 ≤ n ≤ 9,999,999,999)이다. n은 LCD 모니터에 나타내야 할 수 이며, s는 크기이다. www.acmicpc.net 솔루션 : 1. 각 패널별, 좌우가 나눠져 있으면 좌우로 나눠 총 7개의 경우의 수로 나눠 풀었다. 2. 각 숫자가 각 패널의 도형이 필요하면 그것을 취한 뒤 최종적으로 숫자 형태로 완성된다. import sys input = sys.stdin.readline s,tgs = map(str,input().split()) s=int(s) hrz = s+2 ver = 2*s+3 h='-' v='|' ..

    구현) 14503. 로봇 청소기

    문제 출처 : https://www.acmicpc.net/problem/14503 14503번: 로봇 청소기 로봇 청소기가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오. 로봇 청소기가 있는 장소는 N×M 크기의 직사각형으로 나타낼 수 있으며, 1×1크기의 정사각형 칸으로 나누어 www.acmicpc.net 풀이 # 피드백 # 1. 종료 조건의 경우의 수를 늘 먼저 쓰고, 그 나머지 경우에 프로세스를 전개하자. n,m = map(int,input().split()) r,c,dir = map(int,input().split()) board=[] dx=[-1,0,1,0] dy=[0,1,0,-1] for i in range(n): board.append(list(map(int,input()..

    구현) 14891. 톱니바퀴

    문제 출처 : https://www.acmicpc.net/problem/14891 14891번: 톱니바퀴 총 8개의 톱니를 가지고 있는 톱니바퀴 4개가 아래 그림과 같이 일렬로 놓여져 있다. 또, 톱니는 N극 또는 S극 중 하나를 나타내고 있다. 톱니바퀴에는 번호가 매겨져 있는데, 가장 왼쪽 톱니바퀴 www.acmicpc.net 풀이 n=4 a=[list(input()) for _ in range(n)] k=int(input()) for _ in range(k): tg,dir = map(int,input().split()) tg = tg-1 d=[0]*n # 각 톱니의 회전 여부. 0 = 회전 X. 1 = 시계방향, -1 = 반시계방향 d[tg]=dir # 왼쪽 톱니바퀴 연쇄적으로 구하기 for i in..