1. 문제 링크

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

 

1267번: 핸드폰 요금

동호가 저번 달에 이용한 통화의 개수 N이 주어진다. N은 20보다 작거나 같은 자연수이다. 둘째 줄에 통화 시간 N개가 주어진다. 통화 시간은 10,000보다 작거나 같은 자연수이다.

www.acmicpc.net

 

 

 

2. 문제 설명

N개의 통화 시간을 입력받아 문제의 조건에 따라 계산하여 최솟값을 구하는 문제입니다.

 

 

 

3. 소스코드

BOJ 1267번 핸드폰 요금 C++ 풀이입니다.

#include <iostream>
using namespace std;

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

	int N, temp, m = 0, y = 0;
	cin >> N;

	for (int i = 0; i < N; i++) {
		cin >> temp;
		y += (temp / 30 + 1) * 10;
		m += (temp / 60 + 1) * 15;
	}
	if (m < y) cout << "M " << m;
	else if (m > y) cout << "Y " << y;
	else if (m == y) cout << "Y M " << m;

	return 0;
}

30초 미만이거나 60초 미만이어도 요금이 나오므로 나눈 후 1을 더하고 요금을 곱하면 됩니다.

 

'Algorithm > Study' 카테고리의 다른 글

[백준 2438번 C++] 별 찍기 - 1  (0) 2020.04.30
[백준 10804번 C++] 카드 역배치  (0) 2020.04.30
[백준 2577번 C++] 숫자의 개수  (0) 2020.04.30
[백준 10093번 C++] 숫자  (0) 2020.04.29
[백준 2309번 C++] 일곱 난쟁이  (0) 2020.04.29

+ Recent posts