Baekjoon Online Judge
[문제]
N부터 M까지의 수들을 종이에 적었을 때 종이에 적힌 0들을 세는 프로그램을 작성하라.
예를 들어, N, M이 각각 0, 10일 때 0을 세면 0에 하나, 10에 하나가 있으므로 답은 2이다.
[입력]
첫 번째 줄에 테스트 케이스의 수 T가 주어진다.
각 줄에는 N과 M이 주어진다.
- 1 ≤ T ≤ 20
- 0 ≤ N ≤ M ≤ 1,000,000
[출력]
각각의 테스트 케이스마다 N부터 M까지의 0의 개수를 출력한다.
[코드]
#include <iostream>
using namespace std;
int main()
{
int T, N, M;
cin >> T;
for (int i = 0; i < T; i++)
{
cin >> N >> M;
int sum = 0;
for (int j = N; j <= M; j++)
{
if (j == 0)
sum++;
int tmp = j;
while (tmp > 0)
{
if (tmp % 10 == 0)
sum++;
tmp /= 10;
}
}
cout << sum << '\n';
}
return 0;
}
while문에서 j를 그대로 사용하지 말고 tmp 변수처럼
새로운 변수에 j의 값을 대입하여 사용해야 한다.
'Baekjoon > C++' 카테고리의 다른 글
[C++][BOJ/백준] 1032 명령 프롬프트 (0) | 2024.02.04 |
---|---|
[C++][BOJ/백준] 1037 약수 (0) | 2024.02.03 |
[C++][BOJ/백준] 11557 Yangjojang of The Year (0) | 2024.01.31 |
[C++][BOJ/백준] 2693 N번째 큰 수 (1) | 2024.01.30 |
[C++][BOJ/백준] 2163 초콜릿 자르기 (0) | 2024.01.29 |