시뮬레이션 10

[BOJ] - 3190. 뱀

[URL] https://www.acmicpc.net/problem/3190 3190번: 뱀 문제 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임은 NxN 정사각 보드위에서 진행되고, 몇몇 칸에는 사과가 놓여져 있다. 보드의 상하좌우 끝에 벽이 있다. 게임이 시작할때 뱀은 맨위 맨좌측에 위치하고 뱀의 길이는 1 이다. 뱀은 처음에 오른쪽을 향한다. 뱀은 매 초마다 이동을 하는데 다음과 같은 규칙을 따 www.acmicpc.net [풀이 과정] * 시뮬레이션 뱀의 머리랑 꼬리에만 신경 쓰자 뱀의 전체는 check[][]배열에 넣어주자. : 이동 가능한지 판단 1..

Algorithm/백준 2019.08.05

[BOJ] - 17143. 낚시왕

[URL] https://www.acmicpc.net/problem/17143 17143번: 낚시왕 낚시왕이 상어 낚시를 하는 곳은 크기가 R×C인 격자판으로 나타낼 수 있다. 격자판의 각 칸은 (r, c)로 나타낼 수 있다. r은 행, c는 열이고, (R, C)는 아래 그림에서 가장 오른쪽 아래에 있는 칸이다. 칸에는 상어가 최대 한 마리 들어있을 수 있다. 상어는 크기와 속도를 가지고 있다. 낚시왕은 가장 처음에 1번 열의 한 칸 왼쪽에 있다. 다음은 1초 동안 일어나는 일이며, 아래 적힌 순서대로 일어난다. 낚시왕은 가장 오른쪽 열의 오른쪽 칸에 www.acmicpc.net [풀이 과정] 시뮬레이션 문제 input()을 통하여 입력받고 입력받은 값을 벡터에 저장 이 후 king(낚시왕)은 총 C번 ..

Algorithm/백준 2019.07.31

5644. [모의 SW 역량테스트] 무선 충전

[URL] https://www.swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWXRDL1aeugDFAUo SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! www.swexpertacademy.com [풀이 과정] 시뮬레이션 중복 순열 (user가 2명 뿐이라 2중 for문으로 구현) 1. 초기화 2. 입력 3. 각 BC (Battery Charger)의 범위이면 map[i][j]++; 이유: 각 uesr의 가능한 bc의 개수를 찾기위함 또한, 각 BC영역을 vector bcArea[]에 (x,y)형태로 저장하였다. 이유: 중복 순열 시 최대값을 계산하기 위함 4. 출발..

Algorithm/SWEA 2019.07.30

17140. - 이차원 배열과 연산

[URL] https://www.acmicpc.net/problem/17140 17140번: 이차원 배열과 연산 첫째 줄에 r, c, k가 주어진다. (1 ≤ r, c, k ≤ 100) 둘째 줄부터 3개의 줄에 배열 A에 들어있는 수가 주어진다. 배열 A에 들어있는 수는 100보다 작거나 같은 자연수이다. www.acmicpc.net [풀이 과정] * 시뮬레이션 1. 1. input(); a[][]입력받는다. 최초 사이즈 3x3, Rsize = 3, Csize =3; 2. 시간 계산 while문 조건: a[r-1][c-1] ==k인가? 맞으면 시간(time) 리턴, 틀리면 계산 시작 3. 계산 우선Rsize Csize비교 3-1. r연산 각 행 1) calc[] 0으로 초기화 2) 열의 크기만큼 for문..

Algorithm/백준 2019.07.16

5658. [모의 SW 역량테스트] 보물상자 비밀번호

[URL] https://www.swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWXRUN9KfZ8DFAUo SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! www.swexpertacademy.com [풀이 과정] * 시뮬레이션 (예시) (1, B, 3, B, 3, B, 8, 1, F, 7, 5, E) 12개의 숫자가 주어지고 K가 10인 경우 1. input & init 2. 한 변의 자리수 계산, 자릿수만큼 로테이션 3. input[] 배열을 자리수 길이만큼 끊어서 계산 4. 자리수에 해당 하는 temp[] 배열에 값 저장 ex) 3자리씩 1B3, B3B, 81F, ..

Algorithm/SWEA 2019.07.11

[SWEA] - 1240. [S/W 문제해결 응용] 1일차 - 단순 2진 암호코드

[URL] https://www.swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV15FZuqAL4CFAYD&categoryId=AV15FZuqAL4CFAYD&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! www.swexpertacademy.com [풀이 과정] *시뮬레이션 1. 초기화 + 입력받기 : clear(), input()함수 2. 2차원 배열 arr[][]에서 56자리수 찾아내기 3. 56자리수 1차원 배열 code[]에 담기 4. 7자리씩 끊어 check[][]배열과 비교하여 같으면 dap[]배열에 그 수 저장. : isSa..

Algorithm/SWEA 2019.07.01

[BOJ] - 17144. 미세먼지 안녕!

[URL] https://www.acmicpc.net/problem/17144 17144번: 미세먼지 안녕! 미세먼지를 제거하기 위해 구사과는 공기청정기를 설치하려고 한다. 공기청정기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기의 칸으로 나눴다. 구사과는 뛰어난 코딩 실력을 이용해 각 칸 (r, c)에 있는 미세먼지의 양을 실시간으로 모니터링하는 시스템을 개발했다. (r, c)는 r행 c열을 의미한다. 공기청정기는 항상 왼쪽 열에 설치되어 있고, 크기는 두 행을 차지한다. 공기청정기가 설치되어 있지 않은 칸에는 미세먼 www.acmicpc.net [풀이 과정] * 시뮬레이션 1. input() -> map[][]정보값 입력 받는다. // 미세먼지면 벡터에 저장..

Algorithm/백준 2019.06.25

[BOJ] - 14503. 로봇 청소기

[URL] https://www.acmicpc.net/problem/14503 14503번: 로봇 청소기 로봇 청소기가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오. 로봇 청소기가 있는 장소는 N×M 크기의 직사각형으로 나타낼 수 있으며, 1×1크기의 정사각형 칸으로 나누어져 있다. 각각의 칸은 벽 또는 빈 칸이다. 청소기는 바라보는 방향이 있으며, 이 방향은 동, 서, 남, 북중 하나이다. 지도의 각 칸은 (r, c)로 나타낼 수 있고, r은 북쪽으로부터 떨어진 칸의 개수, c는 서쪽으로 부터 떨어진 칸의 개수이다. 로봇 청소기는 다음 www.acmicpc.net [풀이 과정] * 단순 시뮬레이션 [소스 코드] 123456789101112131415161718192021222324..

Algorithm/백준 2019.04.13

[BOJ] - 14499. 주사위 굴리기

[URL] https://www.acmicpc.net/problem/14499 14499번: 주사위 굴리기 첫째 줄에 지도의 세로 크기 N, 가로 크기 M (1 ≤ N, M ≤ 20), 주사위를 놓은 곳의 좌표 x y(0 ≤ x ≤ N-1, 0 ≤ y ≤ M-1), 그리고 명령의 개수 K (1 ≤ K ≤ 1,000)가 주어진다. 둘째 줄부터 N개의 줄에 지도에 쓰여 있는 수가 북쪽부터 남쪽으로, 각 줄은 서쪽부터 동쪽 순서대로 주어진다. 주사위를 놓은 칸에 쓰여 있는 수는 항상 0이다. 지도의 각 칸에 쓰여 있는 수는 10을 넘지 않는 자연수 또는 0이다. 마 www.acmicpc.net [풀이 과정] * 시뮬레이션 1. 4방향에 따라 어떤식으로 주사위의 평면도가 바뀌는지 설정 (dir == 1~ 4) ..

Algorithm/백준 2019.04.11

[BOJ] - 14500. 테트로미노

[URL] https://www.acmicpc.net/problem/14500 14500번: 테트로미노 폴리오미노란 크기가 1×1인 정사각형을 여러 개 이어서 붙인 도형이며, 다음과 같은 조건을 만족해야 한다. 정사각형은 서로 겹치면 안된다. 도형은 모두 연결되어 있어야 한다. 정사각형의 꼭짓점끼리 연결되어 있어야 한다. 즉, 변과 꼭짓점이 맞닿아있으면 안된다. 정사각형 4개를 이어 붙인 폴리오미노는 테트로미노라고 하며, 다음과 같은 5가지가 있다. 아름이는 크기가 N×M인 종이 위에 테트로미노 하나를 놓으려고 한다. 종이는 1×1 크기의 칸으로 나누어져 www.acmicpc.net [풀이 과정] *단순 시뮬레이션 1. map[][] i, j에 관해 생긴 모양(type)에 대해 가능한지 체크 테트리스 모..

Algorithm/백준 2019.04.11