문제
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의 개수를 출력한다.
Solved.ac 레벨
실버 V
풀이
#include <bits/stdc++.h>
using namespace std;
int main(){
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
char zero = '0';
int testCase;
cin >> testCase;
for(int i = 0; i < testCase; i++){
int nNum, mNum;
int cnt = 0;
cin >> nNum >> mNum;
for(int j = nNum; j <= mNum; j++){
string sNum = to_string(j);
for(int k = 0; k < sNum.length(); k++){
if(sNum[k] == zero)
cnt++;
}
}
cout << cnt << endl;
}
return 0;
}
'Study (etc) > Problem Solving' 카테고리의 다른 글
[ BOJ / C++] 11365번 : !밀비 급일 (0) | 2022.04.01 |
---|---|
[BOJ / C++] 11655번 : ROT13 (0) | 2022.04.01 |
[BOJ / C++] 1357번 : 뒤집힌 덧셈 (0) | 2022.04.01 |
[BOJ / C++] 2902번 : KMP는 왜 KMP일까? (0) | 2022.04.01 |
[BOJ / C++] 10953번 : A+B-6 (0) | 2022.04.01 |