분류 전체보기411 [C++] 백준 1992번 : 쿼드트리 https://www.acmicpc.net/problem/1992 1992번: 쿼드트리 첫째 줄에는 영상의 크기를 나타내는 숫자 N 이 주어진다. N 은 언제나 2의 제곱수로 주어지며, 1 ≤ N ≤ 64의 범위를 가진다. 두 번째 줄부터는 길이 N의 문자열이 N개 들어온다. 각 문자열은 0 또 www.acmicpc.net 문제 풀이 이전 문제인 "BOJ 2630번 : 색종이 만들기"와 유사한 문제이다. 쿼드트리를 만들고 맞게 1과 0을 출력하면 된다. 다른 점은 입력받는 방법과 출력 시 '( )'을 맞춰서 출력해야 한다는 점이다. 입력은 공백이 없기 때문에 단순하게 cin으로 받을 수 없어서 string형으로 받고 str [i]가 char라서 아스키코드를 변환하는 방식으로 입력받는다. 출력 시 생성되는.. 2021. 7. 27. [C++] 백준 2630번 : 색종이 만들기 https://www.acmicpc.net/problem/2630 2630번: 색종이 만들기 첫째 줄에는 전체 종이의 한 변의 길이 N이 주어져 있다. N은 2, 4, 8, 16, 32, 64, 128 중 하나이다. 색종이의 각 가로줄의 정사각형칸들의 색이 윗줄부터 차례로 둘째 줄부터 마지막 줄까지 주어진다. www.acmicpc.net 문제 풀이 분할 정복의 첫 문제이다. 함수 div_conq에 x와 y의 좌표를 넣어서 내부에 파란색이 하나라도 칠해져 있다면 4등분으로 나눈다. 함수에서 따지는 cnt의 개수가 0이라면 지금 확인하는 영역이 파란색으로 칠한 것이 하나도 없는 경우이다. 반대로 cnt의 개수가 변의 길이의 제곱과 같다면 확인하는 영역이 모두 파란색이라는 것이다. 그 외에 개수가 애매하다면 .. 2021. 7. 27. [C++] 백준 5430번 : AC https://www.acmicpc.net/problem/5430 5430번: AC 각 테스트 케이스에 대해서, 입력으로 주어진 정수 배열에 함수를 수행한 결과를 출력한다. 만약, 에러가 발생한 경우에는 error를 출력한다. www.acmicpc.net 문제 풀이 이 문제에서 포인트는 세 가지로 나누어 볼 수 있다. 1. string을 입력받아서 덱에 저장 2. 에러가 발생하는 조건 3. 시간제한이 단 1초 입력받은 숫자들은 string이므로 stoi 함수를 사용해서 int로 변환해주어야 한다. 주의할 점은 단순히 isdigit으로 숫자인지 아닌지 분류한다면 두 자리 이상의 수를 제대로 덱으로 가져올 수 없다. 따라서 콤마( , )와 닫는 괄호 ( ] )가 등장한다면 int로 변환해서 덱에 push 해.. 2021. 7. 26. [C++] 백준 1021번 : 회전하는 큐 https://www.acmicpc.net/problem/1021 1021번: 회전하는 큐 첫째 줄에 큐의 크기 N과 뽑아내려고 하는 수의 개수 M이 주어진다. N은 50보다 작거나 같은 자연수이고, M은 N보다 작거나 같은 자연수이다. 둘째 줄에는 지민이가 뽑아내려고 하는 수의 위치가 www.acmicpc.net 문제 풀이 문제에서 3가지 연산이 주어진다. 1번 연산은 첫 번째 원소를 뽑는 연산, 2번 연산은 왼쪽으로 회전, 3번 연산은 오른쪽으로 회전이다. 문제의 포인트는 어느 방향으로 회전할지 정하는 것이다. 타깃이 되는 값의 인덱스를 저장해 begin으로부터의 거리(left)와 end로부터의 거리(right)를 비교한다. 타깃 값을 저장하는 큐가 빌 때까지 연산을 반복한다! left > right.. 2021. 7. 25. [C++] 백준 10866번 : 덱 https://www.acmicpc.net/problem/10866 10866번: 덱 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 문제 풀이 덱의 기본 구현을 묻는 문제였다! 느낀 점 이번 기회에 덱을 공부할 수 있었다. 조만간 STL 컨테이너인 스택과 큐, 덱에 대해서 한번 정리글을 올려야겠다. 코드 #include #include #include using namespace std; int n, tmp; string command; deque dq; int main() { ios_base::sync_wit.. 2021. 7. 24. [C++] 백준 1966번 : 프린터 큐 https://www.acmicpc.net/problem/1966 1966번: 프린터 큐 여러분도 알다시피 여러분의 프린터 기기는 여러분이 인쇄하고자 하는 문서를 인쇄 명령을 받은 ‘순서대로’, 즉 먼저 요청된 것을 먼저 인쇄한다. 여러 개의 문서가 쌓인다면 Queue 자료구조에 www.acmicpc.net 문제 풀이 이번 문제는 idx와 중요도를 pair로 만들어서 큐에 저장하고, 중요도를 순서대로 정렬한 다른 컨테이너를 만들어서 비교하는게 중요하다. 중요도를 비교해서 맞으면 출력회수(cnt)를 늘리고 만약 m과 idx가 같다면 출력회수를 출력하고 종료한다. 느낀 점 문제를 해결하고 보니 많은 분들이 우선순위 큐를 이용하셨고 나보다 코드가 더 깔끔했다. 하지만 나는 우선순위 큐에 대해서 몰랐기 때문에 .. 2021. 7. 24. 이전 1 ··· 51 52 53 54 55 56 57 ··· 69 다음