https://www.acmicpc.net/problem/1284
1284번: 집 주소
재석이는 대문에 붙이는 (주소를 나타내는) 호수판 제작업체의 직원이다. 고객에게 전달할 호수판은 숫자와 숫자 사이 그리고 왼쪽 오른쪽으로 적당히 여백이 들어가 줘야하고 숫자마다 차지하
www.acmicpc.net

우선 조건들이 있으니, 조건문을 써야할 것이고...
나눗셈을 이용해서 한자리씩 계산하고, 마지막이 나눴을 때 몫이 0이면 그 때 끝난 거지.
경우가 1일때 얼마, 2일때 얼마라서 switch-case문으로 구분함.
0이 출력될 때 break하게 조건 걸어두고.
#include <iostream>
using namespace std;
int getResult(int);
int main()
{
while (true)
{
int n;
cin >> n;
if (n == 0)
break;
cout << getResult(n) << endl;
}
return 0;
}
int getResult(int n)
{
int sum = 2;
while (n)
{
int temp = n % 10;
switch(temp)
{
case 1:
sum += 2;
break;
case 0:
sum += 4;
break;
default:
sum += 3;
break;
}
n = n / 10;
if (n)
sum += 1;
}
return sum;
}'백준 문제풀이 > 브론즈3' 카테고리의 다른 글
| 백준 2506번 - 점수계산 (0) | 2021.11.10 |
|---|---|
| 백준 2355번 - 시그마 (0) | 2021.10.20 |
| 백준 2501번 - 약수 구하기 (0) | 2021.10.20 |
| 백준 1267번 - 핸드폰 요금 (0) | 2021.10.18 |