1.小猴与香蕉
【问题描述】
一只小猴想去商店里购买 w 只香蕉,它购买第一只香蕉需要 k 元,购买第2只香蕉需要 2k 元,以此类推,购买第 i 只香蕉需要 i●k 元,然而它只有 n 元, 那么它还需要向它的朋友借多少元?
【输入形式】
输入为一行,包含三个数 k、n、w (1≤ k、w ≤1000,0 ≤ n ≤ 109)。
【输出形式】
输出为一个整数,表示小猴购买 w 只香蕉需要向它朋友所借的钱数,如果不需要借,则输出0。
【样例输入】
3 17 4
【样例输出】
13
//小猴与香蕉
// 一只小猴想去商店里购买 w 只香蕉,它购买第一只香蕉需要 k 元,
//购买第2只香蕉需要 2k 元,以此类推,购买第 i 只香蕉需要 i●k 元,然而它只有 n 元,
//那么它还需要向它的朋友借多少元?
#include<iostream>
using namespace std;
int main()
{
int k,n,w;
cin>>k>>n>>w;
int sum=k*(w+1)*w/2; //计算需要钱数 (1+2+..+w)*k
int res=n>=sum? 0:sum-n; //利用三目运算符判断需不需要借钱
cout<<res<<endl;
return 0;
}
2.铺地砖
【问题描述】
有一个房间,大小为 M×N m2,小王准备用尺寸为 2×1 m2的瓷砖铺满整个房间,每块瓷砖铺贴时可以旋转且尽可能不做切割。请问小王至少需要准备多少块这样的瓷砖?
【输入形式】
输入为两个整数 M 和 N,表示房间的大小。
【输出形式】
输出为一个整数,表示小王铺满整个房间至少需要准备的瓷砖数。
【样例输入1】
3 3
【样例输出1】
5
【样例输入2】
2 4
【样例输出2】
4
3.老鼠爱大米
【问题描述】
两只老鼠兄弟分别去偷大米,它们事先约定,老大偷到的大米,必须留下1/3作为储备粮,老二必须留下1/4,剩下的它们可以自己吃掉。现給出老大和老二本次偷得的大米数,且假定它们所偷得的大米数总是为整数。求老鼠兄弟本次可以有多少储备大米?
【输入形式】
输入为两个整数,表示老鼠兄弟所偷得的大米数。
【输出形式】
输出为一个数,表示最后老鼠兄弟本次可以获得的储备大米数,保留两位小数。
【样例输入】
12 16
【样例输出】
8.00
//老鼠爱大米
//两只老鼠兄弟分别去偷大米,它们事先约定,老大偷到的大米,
//必须留下1/3作为储备粮,老二必须留下1/4,剩下的它们可以自己吃掉。
//现給出老大和老二本次偷得的大米数,且假定它们所偷得的大米数总是为整数。求老鼠兄弟本次可以有多少储备大米?
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int x1,x2;
cin>>x1>>x2;
double res=x1*1.0/3+x2*1.0/4;
cout<<fixed<<setprecision(2)<<res<<endl; //保留两位小数
return 0;
}
4.分西瓜
【问题描述】
今年夏天特别热,阿迪和朋友两人决定去买个西瓜然后分着吃,西瓜的重量为 w,他们两人都是偶数迷,将西瓜分为两份,他们能否都得到重量为偶数的西瓜?
【输入形式】
输入为一个整数 w(1≤ w ≤5×1010),表示西瓜的重量。
【输出形式】
如果西瓜的重量能被分为两个偶数,输出"Yes",否则输出"No"。
【样例输入】
8
【样例输出】
Yes
//分西瓜
//今年夏天特别热,阿迪和朋友两人决定去买个西瓜然后分着吃,
//西瓜的重量为?w,他们两人都是偶数迷,将西瓜分为两份,他们能否都得到重量为偶数的西瓜?
#include<iostream>
using namespace std;
int main()
{
long long w; //注意数据类型,数据较大用long long
cin>>w;
if(w%2==0 && w!=2){ //保证原数是偶数,且!=2,特殊情况=2时候不合题意
cout<<"Yes"<<endl;
} else{
cout<<"No"<<endl;
}
return 0;
}