题目描述
给定整数 a,b 与正整数 c,求出在 a 到 b 之间(包含 a 与 b)有多少整数是 c 的倍数。
输入格式
- 第一行:两个整数 a 与 b;
- 第二行:单个正整数 c。
输出格式
- 单个整数:表示答案。
数据范围
- −10^9≤a≤b≤10^9
- 1≤c≤10^9
样例数据
输入:
4 6
5
输出:
1
解析:
本题由于给的数据范围有负数,则分三种情况讨论:ab都大于,ab都小于0,ab一个大于0一个小于0。代码如下。
#include <iostream>
using namespace std;
int main()
{
int a,b,c;
int ans=0;
cin>>a>>b>>c;
if (a>0 && b>0)
{
ans=b/c-a/c;
if (a%c==0) ans++;
}else if (a<0 && b<0)
{
ans=b/c-a/c;
if (b%c==0) ans++;
}else
{
ans=b/c-a/c;
ans++;
}
cout<<ans<<endl;
return 0;
}