1、
更多闰年数(
a.cpp)
【题目描述】
在 smoj 网站上,有很多针对小学信息学入门的课程,把这些入门课程的题都刷
一遍并理解之后,你就算正式的信息学选手啦。例如课程 9 的某一道题是这样的
(附网址 http://smoj.nhedu.net/showproblem?id=1117):
输入两个正整数 a 和 b,表示开始的年份和结束的年份,问从 a 年到 b 年有多少
闰年?闰年只需要满足如下两个条件之一:
1、能整除 400。
2、能整除 4,但不能整除 100。
【输入格式】
第一行 2 个整数 a 和 b,范围在[1, 1000000000]。
【输出格式】
一个整数。
输入样例
1 10000
输出样例
2425
【提示】 对于 80%的数据,b<=100000000。
#include<iostream>
#include<fstream>
#include<iomanip>
#include<cmath>
#include<string>
#include<cstring>
using namespace std;
int a,b;
int main(){
cin>>a>>b;
if(a>b){
swap(a,b);
}
a--;
cout<<b/4-a/4-b/100+b/400+a/100-a/400;
return 0;
}
2、吃萝卜(b.cpp)
【题目描述】
兔子有 N 盒胡萝卜,编号 0 到 N-1,第 i 盒包含 a[i]根胡萝卜。她决定从这些盒
子里总共吃 K 根胡萝卜。她一次只吃一根胡萝卜,每次从胡萝卜最多的盒子里选
一个胡萝卜吃。如果有多个满足条件的盒子,她将选择其中编号最小的盒子。输
出最后一次吃胡萝卜的盒子编号。
【输入格式】
第 1 行,两个正整数,N 和 K。1 <= N <= 50。
第 2 行,N 个整数,第 i 个整数是 a[i]。1 <= a[i] <= 100。数据保证所有的
胡萝卜总和大于等于 K。
【输出格式】
一个整数,表示最后一次吃胡萝卜的盒子编号
输入样例
2 3
5 8
输出样例
1
输入样例
2 4
5 8
输出样例
0
#include<iostream>
#include<fstream>
#include<iomanip>
#include<cmath>
#include<string>
#include<cstring>
using namespace std;
int n,m,a[60],maii=100000,maij=-11000,mai;
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>a[i];
}
while(m--){
maij=-100;
for(int i=1;i<=n;i++){
if(a[i]>maij){
maij=a[i];
mai=i;
}
}
a[mai]--;
maii=min(maii,mai);
}
cout<<maii-1;
return 0;
}
3、
倍数(
c.cpp
)
【题目描述】
给定一个整数
X
,能不能通过调换
X