fork download
  1. #include <bits/stdc++.h>
  2.  
  3. using namespace std;
  4.  
  5. #define int long long
  6.  
  7. int between(int a,int b,int n)
  8. {
  9. int ret=0;
  10. while(a<n)
  11. {
  12. a*=10,b*=10;
  13. ret+=max(0ll,min(n+1,b)-a);
  14. }
  15. return ret;
  16. }
  17.  
  18. main()
  19. {
  20. int n,k;
  21. cin>>n>>k;
  22. int c_ord=1;
  23. int c_num=1;
  24. while(c_ord<k)
  25. {
  26. int n_ord=c_ord+1+between(c_num,c_num+1,n);
  27. if(n_ord<=k)
  28. {
  29. c_num++;
  30. c_ord=n_ord;
  31. }
  32. else
  33. {
  34. c_num*=10;
  35. c_ord++;
  36. }
  37. }
  38. cout<<c_num<<endl;
  39. }
  40.  
Success #stdin #stdout 0s 3344KB
stdin
10 2
stdout
10