/***********************************
.-'''''-.
.' `.
: :
: :
: _/| :
: =/'/ :
`._/ | .'
( / ,|...-'
\_/^\/||__
_/~ `""~`"` \_
__/ -'/ `-._ `\_\__
/ /-'` `\ \ \-.\
*************************************/
#include<bits/stdc++.h>
using namespace std;
typedef long long ll ;
typedef int ii ;
typedef char cc ;
typedef double dd ;
typedef bool bb ;
cc arr[35] = {'1','2','3','4','5','6',
'7','8','9','A','B','C',
'D','E','F','G','H','I',
'J','K','L','M','N','O',
'P','Q','R','S','T','U',
'V','W','X','Y','Z'};//数字们~
int summ(int n,int q){//求一个数的几次方
int sum= n;
for(int i =0 ;i < q;i++)
sum = sum * sum;
return sum;
}
int su(cc n){
for(int i = 0;i < 35;i++)
if(n == arr[i]) return i+1;
}
int main() {
//step 1. 读题、声明变量
int n,m;//n代表进制,m代表10进制数
string str;//代表数字们
int _arr[11] = {};//代表数值
//step 2. 输入
cin >> n >> str;
//step 3. 处理
int len = str.length();
for(int i = len,j = 1;i < 0;i--,j++){
m += su(str[i]) * summ(n,j);
}
//step 4. 输出
cout <<m;
return 0;
}