#include<bits/stdc++.h>
#define int long long
using namespace std;
string a,b;
int lea,leb,an[5005],bn[5005],cn[5005],dn[5005];
bool greater_eq(int dn[],int bn[],int last_dg,int len)
{
if(dn[last_dg+len]!=0) return true;
for(int i=len-1;i>=0;i--)
{
if(dn[last_dg]>bn[i]) return true;
if(dn[last_dg]<bn[i]) return false;
}
return true;
}
void clear(int a[]) {
for (int i = 0; i < 5005; ++i) a[i] = 0;
}
void div(int an[],int bn[],int cn[],int dn[])
{
clear(cn);
clear(dn);
int la,lb;
for(la=5003;la>0;la--)
if(an[la-1]!=0) break;
for(lb=5003;lb>0;lb--)
if(bn[lb-1]!=0) break;
for(int i=0;i<la;i++) dn[i]=an[i];
for(int i=la-lb;i>=0;i--)
{
while(greater_eq(dn, bn, i, lb))
{
for (int j = 0; j < lb; ++j)
{
dn[i + j] -= bn[j];
if (dn[i + j] < 0)
{
dn[i + j + 1] -= 1;
dn[i + j] += 10;
}
}
cn[i]+=1;
}
}
}
void print(int cn[])
{
int i;
for(i=5005;i>=1;i--)
{
if(cn[i]!=0) break;
}
for(;i>=0;i--) cout<<cn[i];
}
signed main(){
cin>>a>>b;
lea=a.size();
leb=b.size();
clear(an);
for(int i=0;i<lea;i++)
{
an[lea-i-1]=a[i]-'0';
}
clear(bn);
for(int i=0;i<leb;i++)
{
bn[leb-i-1]=b[i]-'0';
}
div(an,bn,cn,dn);
print(cn);
return 0;
}