Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- typedef long long ll;
- using namespace std;
- int const INF = 1e9;
- int to_int(string s) {
- int res = 0;
- for (char i : s) res = res * 10 + i - '0';
- return res;
- }
- int main()
- { ///mov eax shosh
- freopen("input.txt", "r", stdin);
- //freopen("output.txt", "w", stdout);
- ll n;
- cin >> n;
- string k;
- cin >> k;
- ll ans = 0;
- int cur = 0;
- for (char i : k) {
- int q = i - '0';
- if (cur * 10 + q < n) {
- cur = cur * 10 + q;
- } else {
- }
- }
- unsigned ll ans1 = 0;
- string cr = "";
- vector <int> ms; ms.clear();
- for (int i = k.size() - 1; i >= 0; i--) {
- if (k[i] == '0') {
- if (cr.size()) ms.push_back(to_int(cr));
- cr = "0";
- continue;
- }
- if (to_int(k[i] + cr) < n) {
- cr = k[i] + cr;
- } else {
- ms.push_back(to_int(cr));
- cr = k[i];
- }
- }
- ms.push_back(to_int(cr));
- for (int i = ms.size() - 1; i >= 0; i--) {
- ans1 = ans1 * n + ms[i];
- // cout << ms[i];
- }
- cout << min(ans, ans1);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement