[C/C++] 백준 #2877 4와 7(수학)
이번 문제는 접근하는 방법을 알고 있으면 쉽게 문제를 풀 수 있습니다. 문제의 링크는 다음과 같습니다.https://www.acmicpc.net/problem/2877 k번째 작은 숫자라고 했으니까, k+1의 숫자를 2진수로 변환합니다. 예를 들어서 k가 9이라면 k+1은 10이 되며, 이진수로 변환하면, \(1010_2\)가 됩니다. 그러면 처음 1을 제외하고, 1을 7로, 0을 4라 변환하면 됩니다. 결과는 474을 얻게 되겠죠. 4, 7, 44, 47, 74, 77, 444, 447, 474 이므로 우리가 원하는 결과를 얻었음을 알 수 있습니다. 왜 k+1을 했는가를 생각한다면, 전 이 문제를 맨 처음은 무조건 1이 있다고 가정했습니다. 이진수 \(1_2\)는 아무것도 없는 상태이고,..
2024. 8. 23.