#include<bits/stdc++.h>
#define pb push_back
#define ll long long
#define ss second
#define ff first
#define vi std::vector<int>
using namespace std;
namespace kd{
	void print(string name){
		cout<<name<<endl;
	}
	void sort(std::vector<int>&v){
		sort(v.begin(), v.end());
	}
}

vi adj[100000];
int vis[100000];
bitset<100000>seive;
bool is_prime(int a){
	if(a==1)return false;
	if(a==2)return true;
	if(a==3)return true;
	if(a%2==0)return false;
	if(a%3==0)return false;
	for(int i=2;i*i<=a;i++){
		if(a%i==0)return false;
	}

	return true;
}
map<int,int>se;
void seiv(int n){

	for(int i=2;i*i<=n;i++){
		while(n%i==0){
		///	cout<<n<<endl;
			 n/=i;
			se[i]++;
		}

	}
	///
	if(n!=0)se[n]++;
	return ;
}
void for_graph(){
	auto make_it=[&](int a,int b){
		adj[a].pb(b),adj[b].pb(a);
	};
	return ;
}

/*
void solve(){
	int n;
	cin>>n;
	if(n==1){cout<<1<<endl;return;}
	if(n&1)cout<<n/2+1<<endl;
	else {
		cout<<n/2<<endl;
	}
	return ;
}

int n;
	cin>>n;
	map<int,int>x,y;
	for(int i=0;i<n;i++){
		int a,b;
		cin>>a>>b;
		x[a]++;y[b]++;
	}
	int total=0;
	for(auto v:x){
		if(y[v.ff]){
			total+=(v.ss)*y[v.ff];
		}

	}
	cout<<total<<endl; 




	string name;
	cin>>name;
	string ans="";
	for(int i=0;i<name.size();i++){
		if(name[i]=='W'){
			if(i+1<name.size()&& name[i+1]=='U'){
				if(i+1<name.size() && name[i+2]=='B'){
					if(i!=0)
						ans+=' ';

					i+=2;
					continue;
				}
			}
		}	
		ans+=name[i];
	}

	
	cout<<ans<<endl;



	int n;
	 cin>>n;
	 int a,b,c;
	 ll sumx=0,sumy=0,sumz=0;
	 int flag=0;
	 for(int i=0;i<n;i++){
	 	cin>>a>>b>>c;
	 	sumx+=a;
	 	sumy+=b;
	 	sumz+=a;
	 }
	 ///cout<<sumz<<" "<<sumx<<" "<<sumy<<endl;

	 if(sumx==0 && sumy==0 && sumz==0)cout<<"YES";
	 else cout<<"NO";



	 	int n,m;
	 	cin>>n>>m;
	 	vi v(m);
	 	for(auto &x :v)cin>>x;
	 	sort(v.begin(), v.end());
	 	int diff=v[n-1]-v[0];
	 	for(auto x : v)cout<<x<<" ";
	 	///cout<<diff<<endl;
	 		cout<<endl;
	 	for(int i=1;i<m-n+1;i++){
	 		diff=min(v[n+i-1]-v[i],diff);
	 	}
	 	cout<<diff;


	 	int a,b,c;
		cin>>a>>b>>c;
		if(a==1&& b==1&&c==1){cout<<3<<endl;return 0;}
		if(a!=1 && b!=1 && c!=1){cout<<a*b*c<<endl;return 0;}
		
		if(a==1){
			cout<<max({(1+b)*c,(b+c)*1,a+b+c});
		}
		else if(b==1){
			cout<<max({(1+a)*c,(1+c)*a,a+b+c});
			
		}
		else if(c==1){
			cout<<max({a*(b+1),(a+b)*1,a+b+c});
		}
		else cout<<0<<endl;




		string name;
		getline(cin,name);
		map<char,int> m;
		for(auto x : name){
			
			if((int)x >=97 && (int)x <=122)m[x]++;
		}

		cout<<m.size()<<endl;





	
		int level;
		cin>>level;
		set<int>g;
		for(int i=1;i<=level;i++)g.insert(i);
		int p;
		cin>>p;
		set<int>s;
		for(int i=1;i<=p;i++){
			int a;
			cin>>a;
			s.insert(a);
		}		
		int k;
		cin>>k;
		for(int i=1;i<=k;i++){
			int a;
			cin>>a;
			s.insert(a);
		}	

		if(s==g)cout<<"I become the guy.";
		else cout<<"Oh, my keyboard!";




		/*ll n,k;
	cin>>n>>k;
	ll no_odds;
	ll even;
	  if(n&1)
	   no_odds=n/2+1;
	 
	  if(k<=no_odds){
	  		cout<<1+(k-1)*2<<endl;
	  }
	  else{
	  	even=k-no_odds;
	  	cout<<2*even<<endl;

	  }
		int n,m,a,b;
	cin>>n>>m>>a>>b;
	if(m>=n){
		if(n*a<=b)cout<<n*a<<endl;
		else cout<<b<<endl;

	}
	else{
		int c=(n/m)*b;
		if(n%m==0){
			cout<<min(n*a,c)<<endl;
		}
		else{
			cout<<min({n*a,c+(n%m)*a,c+b})<<endl;
		}

	}	

	ll n;
	cin>>n;
	if(n>=0)cout<<n<<endl;
	else{
		
		int x=n;
		int arr[100];
		int i=0;
		while(x){
			arr[i]=x%10;
			x/=10;
			i++;
		}
		int y=n/100;
	//-100003	cout<<y<<endl;
		cout<<max(y*10+(arr[0]),y*10+(arr[1]))<<endl;

	}



	int x,y,x1,y1;
	cin>>x>>y>>x1>>y1;
	///map<int,int>m,n;
	int x2,x3,y2,y3;
	int dis;
	if(x==x1){
		if(y>y1)dis=y-y1;
		else dis=y1-y;
		if(x+dis>1000 )x2=x-dis,y2=y;
		else  x2=x+dis,y2=y;
		x3=x2,y3=y1;
		cout<<x2<<" "<<y2<<" "<<x3<<" "<<y3<<endl;
	}

	if(y==y1){
		if(x>x1)dis=x-x1;
		else dis=x1-x;
		if(y+dis>1000)y2=y-dis,x2=x;
		else y2=y+dis,x2=x;
		y3=y2,x3=x1;
	   cout<<x2<<" "<<y2<<" "<<x3<<" "<<y3<<endl;
	}

	if(x!=x1 && y!=y1){
		x2=x1,y2=y;
		x3=x,y3=y1;
			if(abs(x-x2)==abs(y3-y) && abs(x2-x)==abs(y1-y2))
			 cout<<x2<<" "<<y2<<" "<<x3<<" "<<y3<<endl;
		else cout<<-1<<endl;
	}



	int s,n;
	cin>>s>>n;
	int x,y;
	
	std::vector<pair<int,int>> v;
	while(n--){
		cin>>x>>y;
		v.pb({x,y});
		}
	sort(v.begin(), v.end());
	for(int i=0;i<v.size();i++){
		if(s>v[i].ff)s+=v[i].ss;
		else {cout<<"NO";return 0;}
	}
	cout<<"YES";
	  */
int lcm(int a,int b)
{
	return (a*b)/__gcd(a,b);
}
int main(){
	#ifndef ONLINE_JUDGE
	freopen("input.txt","r",stdin);
	freopen("output.txt","w",stdout);
#endif
	
	/*
	while(t--){
		int n;
		cin>>n;
		if(n&1^1)cout<<n/2<<" "<<n/2<<endl;
		else if(is_prime(n))cout<<1<<" "<<n-1<<endl;
		else{
			se.clear();
			seiv(n);
			int x1=n;
			int ans=1e9;
			int c,v;
			int prev=ans;
			for(auto x : se){
					int p=x1/x.ff;
					int z=x.ff*(p-1);
					ans=min(ans,lcm(x.ff,z));
					if(ans!=prev)prev=ans,c=x.ff,v=z;
			}
			cout<<c<<" "<<v<<endl;
		}
	}
	*/
	int a,b,d;
	cin>>a>>b>>d;
	int ans=0;
	for(int i=a;i<=b;i++){
		if(i%d==0)ans++;
	}
	cout<<ans<<endl;

	return 0;
}

Measured memory_bytes: 5976