1、MT1224棋盘
求一个N*N棋盘中的方块总数。
格式
输入格式:
输入整型N
输出格式:
输出整型
样例 1
输入:
2
输出:
5
备注
考虑到取值范围,可用long整型定义变量
分析过程
这个题目的意思是,在这个棋盘中总的方块数(方块代表的是正方形),所以就需要先写出几个示例,找出相应的方块,然后找规律。
如果不能理解,可以看看轩哥码题:有详细的介绍。
【码蹄集新手村全题解10】循环结构 MT1185 – MT1234_哔哩哔哩_bilibili
实现代码
#include<bits/stdc++.h> using namespace std;
#define int long longint ans=0;
signed main( )
{int n;cin >> n;while(n--) ans+=pow(n+1,2);cout<<ans<<endl;return 0;
}
2、MT1226解不等式
n为正整数,求解n满足不等式:
格式
输入格式:
输入正整数a,b,空格分隔。
输出格式:
输出整型区间上下限,空格分隔。
样例 1
输入:
2010 2011
输出:
18611 18621
备注
对于100%的数据:1<=n<=100,000,1<=a<b
相关知识点
if(a)与if(!a)的区别:
if(a):如果a为非0数字或字符那么就为真,否则为假。等价于if(a!=0)。
if(!a):a为0为真,否则为假。等价于if(a==0)。
分析过程
首先,定义一个flag,用来判断是否满足条件。然后,按照分母的规律,使用一个变量将分母表示出来,然后再去判断是否符合题目中的要求。
实现代码
#include<bits/stdc++.h> using namespace std;int main( )
{int a,b,n=1;bool f=true;cin >> a>>b;double tmp=0,sum=0;while(true){tmp+=1.0/n;sum+=1.0/tmp;if(sum>=b){cout<<n-1;break;}if(f&&sum>a){cout<<n<<" ";f=false;}n++;}return 0;
}
明天继续吧。