Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2017
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.17 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2.  
  3. typedef long long ll;
  4. using namespace std;
  5. int const INF = 1e9;
  6.  
  7. int to_int(string s) {
  8. int res = 0;
  9. for (char i : s) res = res * 10 + i - '0';
  10. return res;
  11. }
  12.  
  13. int main()
  14. { ///mov eax shosh
  15. freopen("input.txt", "r", stdin);
  16. //freopen("output.txt", "w", stdout);
  17. ll n;
  18. cin >> n;
  19. string k;
  20. cin >> k;
  21. ll ans = 0;
  22. int cur = 0;
  23. for (char i : k) {
  24. int q = i - '0';
  25. if (cur * 10 + q < n) {
  26. cur = cur * 10 + q;
  27. } else {
  28.  
  29. }
  30. }
  31. unsigned ll ans1 = 0;
  32. string cr = "";
  33. vector <int> ms; ms.clear();
  34. for (int i = k.size() - 1; i >= 0; i--) {
  35. if (k[i] == '0') {
  36. if (cr.size()) ms.push_back(to_int(cr));
  37. cr = "0";
  38. continue;
  39. }
  40. if (to_int(k[i] + cr) < n) {
  41. cr = k[i] + cr;
  42. } else {
  43. ms.push_back(to_int(cr));
  44. cr = k[i];
  45. }
  46. }
  47. ms.push_back(to_int(cr));
  48. for (int i = ms.size() - 1; i >= 0; i--) {
  49. ans1 = ans1 * n + ms[i];
  50. // cout << ms[i];
  51. }
  52. cout << min(ans, ans1);
  53. return 0;
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement