一、每月天数
题目链接:https://www.luogu.com.cn/problem/B3835
题目描述
小明刚刚学习了每月有多少天,以及如何判断平年和闰年,想到可以使用编程方法求出给定的月份有多少天。你能做到吗?
输入格式
输入一行,包含两个整数
A
,
B
A, B
A,B,分别表示一个日期的年、月。约定
2000
≤
A
≤
3000
2000 \leq A \leq 3000
2000≤A≤3000,
1
≤
B
≤
12
1 \leq B \leq 12
1≤B≤12。
输出格式
输出一行,包含一个整数,表示输入月份有多少天。
样例输入1
2022 1
样例输出1
31
样例输入2
2020 2
样例输出2
29
我的代码:
#include<iostream>
using namespace std;
int main(){
int y,m;
cin>>y>>m;
bool leap=false; //是否是闰年
if(y%400==0) leap=true; //闰年判断
if(y%4==0 && y%100!=0) leap=true; //闰年判断
if(m==1||m==3||m==5||m==7||m==8||m==10||m==12) cout<<"31"; //大月
if(m==4||m==6||m==9||m==11) cout<<"30"; //小月
if(m==2 && leap==true) cout<<"29"; //闰年2月
if(m==2 && leap==false) cout<<"28"; //p平年2月
return 0;
}
二、长方形面积
题目链接:https://www.luogu.com.cn/problem/B3834
题目描述
小明刚刚学习了如何计算长方形面积。他发现,如果一个长方形的长和宽都是整数,它的面积一定也是整数。现在,小明想知道如果给定长方形的面积,有多少种可能的长方形,满足长和宽都是整数?如果两个长方形的长相等、宽也相等,则认为是同一种长方形。约定长方形的长大于等于宽。正方形是长方形的特例,即长方形的长和宽可以相等。
输入格式
输入一行,包含一个整数
A
A
A,表示长方形的面积。约定
2
≤
A
≤
1000
2 \leq A \leq 1000
2≤A≤1000。
输出格式
输出一行,包含一个整数
C
C
C,表示有
C
C
C 种可能的长方形。
样例输入1
4
样例输出1
2
样例 1 解释
有
2
2
2 种长方形面积为
4
4
4,它们的长宽分别为
2
×
2
2 \times 2
2×2,
4
×
1
4 \times 1
4×1。
样例输入2
6
样例输出2
2
样例 2 解释
有
2
2
2 种长方形面积为
6
6
6,它们的长宽分别为
3
×
2
3 \times 2
3×2,
6
×
1
6 \times 1
6×1。
我的代码:
#include<iostream>
using namespace std;
int main(){
int s;
cin>>s;
int res=0;
for(int i=1;i*i<=s;i++){
int b=s/i; //b,i为长方形的边长
if(b*i==s) res++;
}
cout<<res;
return 0;
}
参考答案:area%w==0更好,道破本质
#include<iostream>
using namespace std;
int main(){
int area=0,cnt=0;
cin>>area;
for(int w=1;w*w<=area;w++){
if(area%w==0) cnt++;
}
cout<<cnt;
return 0;
}
三、选择判断题
以下是只有自己才能看懂的笔记