문제 풀이
[baekjoon 1339] 단어 수학 (브루트포스, 그리디) (C++)
https://www.acmicpc.net/problem/1339 1339번: 단어 수학 첫째 줄에 단어의 개수 N(1 ≤ N ≤ 10)이 주어진다. 둘째 줄부터 N개의 줄에 단어가 한 줄에 하나씩 주어진다. 단어는 알파벳 대문자로만 이루어져있다. 모든 단어에 포함되어 있는 알파벳은 최대 www.acmicpc.net 알파벳 대문자로 이루어진 단어에 0~9까지 숫자를 대입해서 그 결과가 가장 큰 숫자를 찾는 문제이다. 예를 들어 ABC + AAA이면 A에 9, B에 8, C에 7을 대입하면 987+999 = 1986이 결과가 되는 것이다. 즉, 알파벳 대문자가 나온 빈도수와 자릿수에 맞춰서 가장 큰 9부터 가장 작은 0을 어떻게 대입해야 할지를 정해줘야 한다. 방법으로는 1. 완전 탐색으로 모든 조합으로 ..
[프로그래머스 LV2] 최댓값과 최솟값 (문자열) [C++]
https://programmers.co.kr/learn/courses/30/lessons/12939 코딩테스트 연습 - 최댓값과 최솟값 문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 문자열을 반환하는 함수, solution을 완성하세요. 예를 programmers.co.kr 간단한 문자열과 정렬 문제였다. #include #include #include #include #include using namespace std; string solution(string s) { vector v; string answer = ""; istringstream ss(s); string buffer = ""; while..
[프로그래머스 LV2] 튜플 (문자열) / 2019 카카오 개발자 겨울 인턴십) [C++]
https://programmers.co.kr/learn/courses/30/lessons/64065 코딩테스트 연습 - 튜플 "{{2},{2,1},{2,1,3},{2,1,3,4}}" [2, 1, 3, 4] "{{1,2,3},{2,1},{1,2,4,3},{2}}" [2, 1, 3, 4] "{{4,2,3},{3},{2,3,4,1},{2,3}}" [3, 2, 4, 1] programmers.co.kr 즉, 원소의 개수가 n개이고, 중복되는 원소가 없는 튜플 (a1, a2, a3, ..., an)이 주어질 때(단, a1, a2, ..., an은 자연수), 이는 다음과 같이 집합 기호 '{', '}'를 이용해 표현할 수 있습니다. {{a1}, {a1, a2}, {a1, a2, a3}, {a1, a2, a3, a..
![[프로그래머스 LV2] 카카오프렌즈 컬러링북 (BFS, DFS) / 2017 카카오 코드 예선) [C++]](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Flg5yq%2Fbtq8GDoCqLg%2FAZaJ7xx77aFNIVfoPF4yF0%2Fimg.png)
[프로그래머스 LV2] 카카오프렌즈 컬러링북 (BFS, DFS) / 2017 카카오 코드 예선) [C++]
https://programmers.co.kr/learn/courses/30/lessons/1829 코딩테스트 연습 - 카카오프렌즈 컬러링북 6 4 [[1, 1, 1, 0], [1, 2, 2, 0], [1, 0, 0, 1], [0, 0, 0, 1], [0, 0, 0, 3], [0, 0, 0, 3]] [4, 5] programmers.co.kr 카카오 프렌즈 컬러링북 출판사의 편집자인 어피치는 네오에게 컬러링북에 들어갈 원화를 그려달라고 부탁하여 여러 장의 그림을 받았다. 여러 장의 그림을 난이도 순으로 컬러링북에 넣고 싶었던 어피치는 영역이 많으면 색칠하기가 까다로워 어려워진다는 사실을 발견하고 그림의 난이도를 영역의 수로 정의하였다. (영역이란 상하좌우로 연결된 같은 색상의 공간을 의미한다.) 그림에 ..
[프로그래머스 LV2] 단체사진 찍기 (조합) / 2017 카카오 코드 본선) [C++]
https://programmers.co.kr/learn/courses/30/lessons/1835 코딩테스트 연습 - 단체사진 찍기 단체사진 찍기 가을을 맞아 카카오프렌즈는 단체로 소풍을 떠났다. 즐거운 시간을 보내고 마지막에 단체사진을 찍기 위해 카메라 앞에 일렬로 나란히 섰다. 그런데 각자가 원하는 배치가 모두 programmers.co.kr algorithm STL의 next_permutation의 존재를 알게 된 문제다. 항상 순열이나 조합을 직접 구현해서 사용했었는데 종종 사용하면 편할 것 같다. 매번 순열을 구한 뒤, 주어진 조건에 해당하는지 확인 후 확인하면 개수를 세주는 식으로 진행하면 된다. #include #include #include #include using namespace s..
[baekjoon 16928] 뱀과 사다리 게임 (BFS) (C++)
https://www.acmicpc.net/problem/16928 16928번: 뱀과 사다리 게임 첫째 줄에 게임판에 있는 사다리의 수 N(1 ≤ N ≤ 15)과 뱀의 수 M(1 ≤ M ≤ 15)이 주어진다. 둘째 줄부터 N개의 줄에는 사다리의 정보를 의미하는 x, y (x < y)가 주어진다. x번 칸에 도착하면, y번 칸으 www.acmicpc.net 최소한의 주사위를 굴려서 100까지 가야 하고, 가는 도중에 사다리와 뱀이 있다. 사다리에 해당하면 도착점(100)에 가까워지고, 뱀을 만나면 시작점(1)과 가까워진다. 1. 한 칸에 뱀과 사다리가 이중으로 나오는 경우가 없다고 했으니 1차원 배열에 뱀과 사다리를 모두 입력받았고, 2. 주사위를 통해 (1~6)까지의 이동을 할 수 있으므로 BFS를 하..