728x90
반응형

백준/C++ 3

[백준][C++] 18111번 - 마인크래프트

https://www.acmicpc.net/problem/18111 18111번: 마인크래프트 팀 레드시프트는 대회 준비를 하다가 지루해져서 샌드박스 게임인 ‘마인크래프트’를 켰다. 마인크래프트는 1 × 1 × 1(세로, 가로, 높이) 크기의 블록들로 이루어진 3차원 세계에서 자유롭게 www.acmicpc.net 풀이 모든 땅의 높이만 같으면 되므로 N*M 크기의 땅을 선형변환 -> a[N*M] 모든 땅의 높이 중 최고 높이과 최저 높이 사이의 값이 땅을 고르는 높이가 될 수 있음 땅을 고르게 될 높이별로 땅을 고르는 시간 측정 -> 최솟 값 저장 이때 고르는 작업에 의한 인벤토리의 블록 개수 측정 -> 음수라면 불가능한 작업이므로 시간 측정 배제 -> 이때 작은 수에서 큰 수로 땅의 높이를 증가하면서 ..

백준/C++ 2023.07.10

[백준][C++] 11659번 - 구간 합 구하기 4

https://www.acmicpc.net/problem/11659 11659번: 구간 합 구하기 4 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j www.acmicpc.net 풀이 수를 입력받아서 배열에 저장 - 배열에 각각 저장해서 더하면 시간 초과 -> 배열에는 배열의 이전 인덱스의 값과 입력받은 수의 합 저장 배열에서 합을 구해야 하는 구간 (끝 부분) 인덱스 값 - (처음 부분 - 1) 인덱스 값을 구하면 i~j번째 수의 합 답 #include using namespace std; int main(void) { ios::sync_with_..

백준/C++ 2023.04.26

[백준][C++] 11727번 - 2×n 타일링 2

https://www.acmicpc.net/problem/11727 11727번: 2×n 타일링 2 2×n 직사각형을 1×2, 2×1과 2×2 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×17 직사각형을 채운 한가지 예이다. www.acmicpc.net 풀이 직사각형의 가로를 채우는 방법 2 * 1 -> 2칸 차지 2 * 2 -> 2칸 차지 1 * 2 -> 1칸 차지 n >= 3 일 때, n-1에서 가로가 1 늘어난 경우, n-2에서 가로가 2 늘어난 경우를 이용하여 문제를 해결 가로가 2 늘어나는 경우의 수는 2가지 -> (n-2 결과) * 2 만큼 더해줘야 함 a[i] = (a[i - 1] + 2 * a[i - 2]) 답 #include using namespace std..

백준/C++ 2023.04.17
728x90
반응형