IT 프로그래밍/백준

[C++] 백준 10810번 공넣기

기술1 2024. 3. 18. 00:24
반응형

https://www.acmicpc.net/problem/10810

 

10810번: 공 넣기

도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 매겨져 있다. 또, 1번부터 N번까지 번호가 적혀있는 공을 매우 많이 가지고 있다. 가장 처음 바구니에는 공이

www.acmicpc.net

 

풀이


#include <iostream>

using namespace std;
int main()
{
	int N, M;
	cin >> N;
	cin >> M;

	int data[100] = { 0, };

	for (int i = 0; i < M; i++)
	{
		int f, j, k;
		cin >> f >> j >> k;

		for (int p = f; p <=j; p++)
		{
			data[p] = k;
		}

	}
	

	for (int i = 1; i <= N; i++)
	{
		cout << data[i] << " ";
	}

}

변수가 여러개라 조금 난잡하긴 합니다.

 

공이 하나도 안 들어가면 0으로 배열을 출력해야 하니 초기값을 0으로 잡아주었습니다. 배열에서 초기값을 설정하는 방법은 int data[100] = {0, }; 이렇게 하면 모든 배열이 0으로 초기화가 됩니다.

 

그 다음 for문을 사용해서 i, j, k ( 저는 임의상 변수를 바꿨지만) 으로 입력을 받은 다음에 그 자리에서 for문을 통해 배열에  해당 수를 넣는 방식으로 했습니다.

 

문제에서 공을 뺀다는 표현을 사용하였지만 굳이 코딩에서 뺴는 것을 구현할 필요는 없고 기존에 것을 덮으면 되기에 for문을 통해 덮는 방식으로 사용했습니다.

반응형

'IT 프로그래밍 > 백준' 카테고리의 다른 글

[C++] 5597 과제 안 내신 분..?  (0) 2024.03.18
[C++] 백준 10813 공 바꾸기 풀이  (0) 2024.03.18
[C++] 백준 2562 최댓값  (0) 2024.03.16
[C++] 1546 평균  (0) 2024.03.16
[C++] 백준 10818 최소, 최대  (0) 2024.03.16