백준(722)
-
[백준/BOJ] 백준 2884번 : 알람 시계
https://www.acmicpc.net/problem/2884 2884번: 알람 시계 문제 상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다. 상근이는 모든 방법을 동원해보았지 www.acmicpc.net 시간을 분단위로 바꾸고 45분을 뺀다. 이때 주의해야 될 점을 45분을 뺏을 때 그 전날이 되는 경우 즉, 시간이 음수가 되는 경우에는 24*60분(24시간)을 더한다. 그리고 60으로 나눠 시를 구하고, 60으로 나눈 나머지가 분이 된다. 코드 #include using namespace std; int main() { cin.tie(NULL); ios_base::sync_with_stdio(false..
2020.07.18 -
[백준/BOJ] 백준 14500번 : 테트로미노
https://www.acmicpc.net/problem/14500 14500번: 테트로미노 폴리오미노란 크기가 1×1인 정사각형을 여러 개 이어서 붙인 도형이며, 다음과 같은 조건을 만족해야 한다. 정사각형은 서로 겹치면 안 된다. 도형은 모두 연결되어 있어야 한다. 정사각형의 변� www.acmicpc.net 각 칸마다 주어진 5개의 테트로미노를 이용해 만들어질 수 있는 모든 모양을 고려해 그중 칸에 쓰인 수들의 합이 가장 큰 값을 찾는다. 코드 #include #include #include using namespace std; int n, m; int board[500][500]; int block[19][4][2] = { { {0,0},{0,1},{0,2},{0,3} }, //a번 블록 { {0..
2020.07.17 -
[백준/BOJ] 백준 1992번 : 쿼드트리
https://www.acmicpc.net/problem/1992 1992번: 쿼드트리 첫째 줄에는 영상의 크기를 나타내는 숫자 N 이 주어진다. N 은 언제나 2의 제곱수로 주어지며, 1≤N ≤64의 범위를 가진다. 두 번째 줄부터는 길이 N 의 문자열이 N 개 들어온다. 각 문자열은 0 또는 www.acmicpc.net 기준점(x, y)을 지정해서 지정 크기(size) 구역이 모두 같은 수라면 그 수로 압축한다. 만약 하나라도 다른 수가 존재한다면 왼쪽 위, 오른쪽 위, 왼쪽 아래, 오른쪽 아래로 4개의 구역으로 나눠 각각 압축을 진행한 뒤 합친다. 코드 #include #include #include using namespace std; //(x,y)의 위치를 기준으로 가로, 세로 size 크기 구..
2020.07.16 -
[백준/BOJ] 백준 1700번 : 멀티탭 스케줄링
https://www.acmicpc.net/problem/1700 1700번: 멀티탭 스케줄링 기숙사에서 살고 있는 준규는 한 개의 멀티탭을 이용하고 있다. 준규는 키보드, 헤어드라이기, 핸드폰 충전기, 디지털 카메라 충전기 등 여러 개의 전기용품을 사용하면서 어쩔 수 없이 각종 전 www.acmicpc.net 멀티탭에서 어떠한 전기제품을 빼야 하는 순간이 올 때 가장 효율적인 것은, 다음에 더 이상 쓰이지 않는 전기제품을 빼는 것이다. 그다음으로 효율적인 것은 다음에 쓰일 순서가 가장 뒤인 것을 빼는 것이다. 그러므로 multitap이라는 이름의 multimap을 만들어 현재 멀티탭에 사용 중인 전기제품의 다음 사용 순서와 이름을 저장하고 전기용품의 다음 사용 순서 기준으로 내림차순 정렬을 하였다 여기..
2020.07.16 -
[백준/BOJ] 백준 14681번 : 사분면 고르기
https://www.acmicpc.net/problem/14681 14681번: 사분면 고르기 문제 흔한 수학 문제 중 하나는 주어진 점이 어느 사분면에 속하는지 알아내는 것이다. 사분면은 아래 그림처럼 1부터 4까지 번호를 갖는다. "Quadrant n"은 "제n사분면"이라는 뜻이다. 예를 들어, 좌 www.acmicpc.net x, y를 입력받고 어느 사분면인지 출력한다. 코드 #include using namespace std; int main() { cin.tie(NULL); ios_base::sync_with_stdio(false); int x, y; cin >> x >> y; //사분면 번호를 판단해서 사분면 번호를 출력한다 if (x > 0 && y > 0) cout 0) cout
2020.07.08 -
[백준/BOJ] 백준 2753번 : 윤년
https://www.acmicpc.net/problem/2753 2753번: 윤년 연도가 주어졌을 때, 윤년이면 1, 아니면 0을 출력하는 프로그램을 작성하시오. 윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다. 예를 들어, 2012년은 4의 배수이면서 www.acmicpc.net 연도를 입력받고 윤년인지를 판단한다 코드 #include using namespace std; int main() { cin.tie(NULL); ios_base::sync_with_stdio(false); int year; cin >> year; //윤년인지 판단한다 if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) cout
2020.07.08