본문 바로가기

PS/백준9

[백준 14500] 테트로미노 https://www.acmicpc.net/problem/14500 14500번: 테트로미노 폴리오미노란 크기가 1×1인 정사각형을 여러 개 이어서 붙인 도형이며, 다음과 같은 조건을 만족해야 한다. 정사각형은 서로 겹치면 안 된다. 도형은 모두 연결되어 있어야 한다. 정사각형의 변 www.acmicpc.net 이번 문제는 약한 빡구현 문제입니다. 5개의 도형이 있고 이 도형이 회전/대칭 한 모양에 대해 맵을 전체 순회하면서 해당 도형과 일치하는 부분의 합이 가장 큰 값을 구하는 문제입니다. 1*4 사각형과 2*2 사각형은 길이가 4, 2이기 때문에 따로 처리하고 나머지 3 도형은 3*3 배열안에 각 도형 모양에 맞게 선언해 주었습니다. 그리고 전체 맵의 길이를 상하좌우 +2만큼 증가시켜 위 3*3 배열.. 2022. 6. 9.
[백준 12100] 2048 (Easy) https://www.acmicpc.net/problem/12100 12100번: 2048 (Easy) 첫째 줄에 보드의 크기 N (1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 게임판의 초기 상태가 주어진다. 0은 빈 칸을 나타내며, 이외의 값은 모두 블록을 나타낸다. 블록에 쓰여 있는 수는 2 www.acmicpc.net 이 문제는 완전탐색으로 해결 할 수 있는 문제이다. 시간복잡도를 계산해 보면 재귀를 5번 호출하는것 20*20*4^5 인데 4^5는 상하좌우를 움직이면서 재귀호출하고 매번 상하좌우로 움직일때 총 블록의 갯수가 20*20이 되기 때문이다. 이 문제에서 고려해야할 부분은 총 2가지 인데 1. 상하좌우를 움직일때 기존의 map 에서 돌아야하기 때문에 기존 상태를 갖는 map.. 2021. 10. 4.
[백준 14906] 스러피 https://www.acmicpc.net/problem/14906 14906번: 스러피 첫 번째 줄에는 입력될 문자열의 개수를 나타내는 정수 N이 1~10의 범위로 우선 입력된다. 다음 줄부터 N개의 문자열이 입력된다. 문자열은 1~60개의 알파벳 문자로 구성된다. www.acmicpc.net 이번 문제는 정규식을 활용하기에 아주 좋은 문제라 생각하여 포스팅하였습니다. 문제 스러피(Slurpy)란 다음에서 설명할 어떠한 속성이 존재하는 문자열을 지칭한다. 문자열을 읽어서 스러피가 존재하는지를 판단하는 프로그램을 작성하라. 우선, 스럼프(Slump)는 다음 조건을 만족하는 문자열이다. 첫 번째 문자가 ‘D’ 또는 ‘E’ 이다. 첫 번째 문자 뒤에는 하나 이상의 ‘F’가 반복되어 연달아 나온다. 위 2의 .. 2021. 9. 22.
[백준 10993] 별 찍기 - 18 https://www.acmicpc.net/problem/10993 10993번: 별 찍기 - 18 예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요. www.acmicpc.net 이번문제는 위 처럼 규칙을 갖게 별을 찍는 문제입니다. 저는 평범하게 배열에 저장해서 규칙에 맞게 별을 넣었습니다. 풀이의 사고 과정 0. N을 입력받았을 때 전체 갯수에 점화식 구하기 1. 배열에 저장하여 풀지, 그냥 print할지 결정 2. 규칙 발견하고 기준을 잡기 3. 각 규칙마다 다르게 로직을 생각하기 4. 구현 순으로 문제를 풀었습니다. 입력숫자가 짝홀수 일때 로직을 다르게 하였고 그리는 순서는 꼭지점을 기준으로 그리게 하였습니다. 빗변과 밑변을 그리는 로직을 생각했고 다음 삼각형을 그릴때 꼭지점의 위치를 넘겨서 그.. 2021. 9. 21.
[백준 10997] 별 찍기 - 22 https://www.acmicpc.net/problem/10997 10997번: 별 찍기 - 22 예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요. www.acmicpc.net 다른풀이들 보면 재귀로 풀었는데 재귀쓸 필요없이 while문에 두면 풀이가 쉬워서 올림. #include #include #include #include #include #include using namespace std; char map[400][400]; #define LEFT 0 #define RIGHT 1 #define UP 2 #define DOWN 3 int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); int n; cin >> n; int curX = 0; .. 2021. 9. 19.
[백준 9370] 미확인 도착지 문제 (취익)B100 요원, 요란한 옷차림을 한 서커스 예술가 한 쌍이 한 도시의 거리들을 이동하고 있다. 너의 임무는 그들이 어디로 가고 있는지 알아내는 것이다. 우리가 알아낸 것은 그들이 s지점에서 출발했다는 것, 그리고 목적지 후보들 중 하나가 그들의 목적지라는 것이다. 그들이 급한 상황이기 때문에 목적지까지 우회하지 않고 최단거리로 갈 것이라 확신한다. 이상이다. (취익) 어휴! (요란한 옷차림을 했을지도 모를) 듀오가 어디에도 보이지 않는다. 다행히도 당신은 후각이 개만큼 뛰어나다. 이 후각으로 그들이 g와 h 교차로 사이에 있는 도로를 지나갔다는 것을 알아냈다. 이 듀오는 대체 어디로 가고 있는 것일까? 예제 입력의 두 번째 케이스를 시각화한 것이다. 이 듀오는 회색 원에서 두 검은 원 중 하.. 2021. 8. 9.