#include <bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
#define fast ios_base::sync_with_stdio(false), cin.tie(NULL), cout.tie(NULL);
#define int long long
#define ld long double
using namespace __gnu_pbds;
using namespace std;
 
template<class T> using oset = tree<T, null_type, less<T>, rb_tree_tag,tree_order_statistics_node_update> ;
 
void DBG() { cerr << "]" << endl; }
template<class H, class... T> void DBG(H h, T... t) {
	cerr << h; if (sizeof...(t)) cerr << ", ";
	DBG(t...); }
#ifndef ONLINE_JUDGE 
#define dbg(...) cerr << "LINE(" << __LINE__ << ") -> [" << #__VA_ARGS__ << "]: [", DBG(__VA_ARGS__)
#else
#define dbg(...) 0
#endif
 
const int N = 1e2 + 5;
const int mod = 1e9 + 7;
const int INF = 1e18;
const double eps = 1e-5;
const double PI = acos(-1);
 
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());

void solve(int tc){
	int t, n;
	cin >> t >> n;
	cout << (n*100 +(t-1))/t + (n-1);
}
 
int32_t main(){
	fast;
	int tc;
	//cin >> tc;
	tc = 1;
	for(int tt=1; tt<=tc; tt++){
		solve(tt);
	}
	return 0;
}

#include <bits/stdc++.h>
using namespace std;

#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace __gnu_pbds;

#define pb                    push_back
#define ll                    long long
#define ld                    long double
#define sz(x)                 (ll)x.size()
#define vll                   vector<long long>

#define infi                  INT_MAX
#define infl                  LONG_LONG_MAX
#define infd                  LDBL_MAX
#define f(i,a,b)              for(ll i=a;i<b;i++)
#define fi(i,a,b)             for(ll i=(b-1);i>=a;i--)
#define F                     first
#define S                     second
#define G(a,b)                get<a>(b)
#define MP                    make_pair
#define MT                    make_tuple
#define pll                   pair<ll,ll>
#define endl                  "\n"
#define ALL(v)                v.begin(),v.end()
#define nl                    cout<<"\n";
#define deb                   cout<<"***************************************************************************************\n";
#define moshi                 cout<<"moshi moshi ! \n";
#define hi                    cout<<"hi ! \n";
#define bye                   cout<<"bye bye ! \n";
#define kawai                 cout<<"O kawai koto ! \n";
#define o_set                 tree<ll, null_type,less<ll>, rb_tree_tag,tree_order_statistics_node_update>
#define number_of_set_bits  __builtin_popcountll
#define eb                    emplace_back
const ld PI=3.1415926535897932384626433;

template<class T>
using min_heap = priority_queue<T,vector<T>,greater<T> >;


auto clk=clock();
mt19937_64 rng(chrono::high_resolution_clock::now().time_since_epoch().count());

#define TRACE
#ifdef TRACE
#define trace(...) __f(#__VA_ARGS__, __VA_ARGS__)
    template <typename Arg1>
    void __f(const char* name, Arg1&& arg1){
        cout << name << " : " << arg1 <<"\n";
        //use cerr if u want to display at the bottom
    }
    template <typename Arg1, typename... Args>
    void __f(const char* names, Arg1&& arg1, Args&&... args){
        const char* comma = strchr(names + 1, ','); cout.write(names, comma - names) << " : " << arg1<<" | ";__f(comma+1, args...);
    }
#else
#define trace(...)
#endif

//**********************************************************  Code begins  ***********************************************

// trick for traversing all submasks
// for (ll j=mask ;j; j=(j-1)&mask)  // also include 0 manually
// v.resize(unique(v.begin(), v.end()) - v.begin());    // remove duplicates

ll t,n;
vll v;

ll calc(ll mid)
{
    ll cnt=mid;
    for(auto j : v)
    {
        if(j<=mid)
        {
            ll rem=mid-j;
            cnt--;
            cnt-=(rem/(100+t));
        }
    }
    return cnt;
}

void solve()
{
    cin>>t>>n;
    
    f(i,1,101)
    {
        ll val=((100+t)*i)/100;
        v.pb(val);
    }

    ll lef=1,rig=infl,mid,res=-1;
    while(lef<=rig)
    {
        mid=(lef+rig)>>1;
        if(calc(mid)>=n) res=mid,rig=mid-1;
        else lef=mid+1;

    }

    cout<<res<<"\n";
}


int main()
{
    ios_base::sync_with_stdio(0),cin.tie(0),cout.tie(0);
    srand(chrono::high_resolution_clock::now().time_since_epoch().count());
    cout<<fixed<<setprecision(8);


    ll test_cases=1;
    //cin>>test_cases;

    f(i,1,test_cases+1)
    {
        solve();
        //clr();
    }


    #ifdef rd
    cout<<endl<<endl<<endl<<endl<<"Time elapsed: "<<(double)(clock()-clk)/CLOCKS_PER_SEC<<endl;
    #endif

    return 0;
}
