aboutsummaryrefslogtreecommitdiff
path: root/kth_smallest_lexicographical.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'kth_smallest_lexicographical.cpp')
-rw-r--r--kth_smallest_lexicographical.cpp31
1 files changed, 0 insertions, 31 deletions
diff --git a/kth_smallest_lexicographical.cpp b/kth_smallest_lexicographical.cpp
deleted file mode 100644
index 71478e9..0000000
--- a/kth_smallest_lexicographical.cpp
+++ /dev/null
@@ -1,31 +0,0 @@
-// 440. K-th Smallest in Lexicographical Order
-#include "leetcode.h"
-// given two integers 'n' and 'k', return the k'th lexicographically smallest
-// integer
-
-class Soltuion {
-public:
- int findKthNumber(int n, int k) {
- int curr = 1;
- for (--k; k > 0;) {
- int cnt = 0;
- for (long long first = static_cast<long long>(curr), last = first + 1;
- first <= n; first *= 10, last *= 10)
- cnt += static_cast<int>((min(n + 1LL, last) - first));
- if (k >= cnt) {
- ++curr;
- k -= cnt;
- } else {
- curr *= 10;
- --k;
- }
- }
- return curr;
- }
-};
-
-int main() {
- Soltuion obj;
- printf("%d\n", obj.findKthNumber(13, 2)); // expect: 10
- printf("%d\n", obj.findKthNumber(1, 1)); // expect: 1
-}