Algorithm/BOJ
백준 1748번 C++
poopooreum
2023. 7. 25. 16:13
반응형
백준 1748번 수 이어 쓰기1
https://www.acmicpc.net/problem/1748
1748번: 수 이어 쓰기 1
첫째 줄에 N(1 ≤ N ≤ 100,000,000)이 주어진다.
www.acmicpc.net


정답 코드
#include <iostream>
using namespace std;
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL); cout.tie(NULL);
int N; cin >> N;
long long answer = 0;
int start = 1, end = 10;
int len = 1;
while(1){
for(int i=start; i < end; ++i){
if(i > N){
cout << answer << '\n';
return 0;
}
answer += len;
}
start *= 10; end *= 10;
len++;
}
}
문제 풀이
단순한 문자 길이를 더하는 문제입니다. 한 자리 수는 +1, 두 자리 수는 +2... 이런 식입니다. for문을 돌려주면서 자릿수가 바뀔 때마다 시작하는 변수값을 *10, 끝나는 변수값을 *10, len값을 +1씩 시켜주면 됩니다.
반응형