奇数求和
题目描述
计算非负整数 m m m 到 n n n(包括 m m m 和 n n n)之间的所有奇数的和,其中, m m m 不大于 n n n,且 n n n 不大于 300 300 300。例如 m = 3 , n = 12 , m=3,n=12, m=3,n=12, 其和则为: 3 + 5 + 7 + 9 + 11 = 35 3+5+7+9+11=35 3+5+7+9+11=35。
输入格式
两个数 m m m 和 n n n,两个数以一个空格分开,其中 0 ≤ m ≤ n ≤ 300 0 \le m \le n \le 300 0≤m≤n≤300。
输出格式
输出一行,包含一个整数,表示 m m m 到 n n n(包括 m m m 和 n n n)之间的所有奇数的和。
样例 #1
样例输入 #1
7 15
样例输出 #1
55
分析:
我们直接套公式就可以啦~~
代码:
#include<bits/stdc++.h>
using namespace std;
int k,n,m;
int main()
{
cin>>n>>m;
if(n%2==0)//如果n为偶数,那么n~m的第一个奇数就是n+1
{
n++;
}
if(m%2==0)//m也一样
{
m--;
}
k=(m-n)/2+1;//求项数
cout<<(n+m)*k/2;//求和
}
结束啦~~~