※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※

 

이번에 볼 문제는 백준 25278번 문제인 Terraforming이다.
문제는 아래 링크를 확인하자.

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

 

25278번: Terraforming

On the first line, the number $n\in\{1,\ldots, 315\}$ of environmental changes on Mars. Each of the following $n$ lines consists of a parameter (oxygen, ocean, or temperature), followed by an integer. The change for oxygen and oceans is in percentage point

www.acmicpc.net

올라가는 대상을 문자열로 읽고, 올라가는 폭을 정수로 읽어 테라포밍 과정을 직접 시뮬레이션해 문제를 해결하자.

 

"4"가 아닌 "+4"와 같은 입력도 cin을 통해 정수 자료형에 저장하면 정수 4로 저장해주므로 편하게 구현하자.

 

아래는 제출한 소스코드이다.

#include <iostream>
#include <string>
using namespace std;

int main() {
	ios::sync_with_stdio(0);
	cin.tie(0);

	int ocean = 0, oxy = 0, temp = -30;
	int K; cin >> K;
	while (K--) {
		string s; int x;  cin >> s >> x;
		if (s[1] == 'c') ocean += x;
		else if (s[1] == 'x') oxy += x;
		else temp += x;
	}

	if (ocean >= 9 && oxy >= 14 && temp >= 8) cout << "liveable";
	else cout << "not liveable";
}
728x90

'BOJ' 카테고리의 다른 글

[BOJ 25277 // C++] Culture shock  (0) 2022.11.11
[BOJ 24296 // C++] ЛИНИЯ  (0) 2022.11.11
[BOJ 25527 // C++] Counting Peaks of Infection  (0) 2022.11.11
[BOJ 2228 // C++] 구간 나누기  (0) 2022.11.11
[BOJ 24309 // C++] РАВЕНСТВО  (0) 2022.11.11

+ Recent posts