2050http://www.51nod.com/Challenge/Problem.html#problemId=2050

输入一个整数n(保证范围在0到25之间),表示一个人的年龄。

如果n在0~3的范围内,输出"infant"。

如果n在4~12的范围内,输出"child"。

如果n在13~18的范围内,输出"youngster"。

如果n在19~25的范围内,输出"youth"。

思路:逐一判断输出即可。

#include <bits/stdc++.h>
using namespace std;
int main() { int n;cin>>n;if(n>=0&&n<=3)cout<<"infant";if(n>=4&&n<=12)cout<<"child";if(n>=13&&n<=18)cout<<"youngster";if(n>=19&&n<=25)cout<<"youth";return 0;
}

2056http://www.51nod.com/Challenge/Problem.html#problemId=2056

输入一个整数n,使用试除法判断它是不是素数。如果是,输出"Yes",否则输出"No"。

for 循环判断,当能整除时,flag=0,跳出循环。

#include <bits/stdc++.h>
using namespace std;
int main() { int n;cin>>n;int x=sqrt(n),flag=1;for(int i=2;i<=x;i++){if(n%i==0){flag=0;break;}}if(flag)cout<<"Yes";else cout<<"No";return 0;
}

2057http://www.51nod.com/Challenge/Problem.html#problemId=2057

输入一个整数n(n <= 10000)。随后输入n个整数。输出这n个整数中的最小值。

打擂台求最小值

#include <bits/stdc++.h>
using namespace std;
const int maxn=10005;
int a[maxn];
int main() { int n,minn=100000000000;cin>>n;for(int i=1;i<=n;i++){cin>>a[i];if(a[i]<minn)minn=a[i];}cout<<minn<<endl;return 0;
}

2059http://www.51nod.com/Challenge/Problem.html#problemId=2059

现在小瓜想通过台阶走上平台,最底层(小瓜所在的层)编号为1,最顶层编号为n。由于小瓜的腿比较短,他一次只能向上走1级或者2级台阶。小瓜想知道他有多少种方法走上平台,你能帮帮他吗?

用递归,递归式 为ff(n-1)+ff(n-2)

#include<bits/stdc++.h>
using namespace std;
int ff(int n){if(n==1||n==2)return 1;else return ff(n-1)+ff(n-2);
}
int main() { int n;cin>>n;cout<<ff(n);return 0;
}

2086http://www.51nod.com/Challenge/Problem.html#problemId=2086

输入一个正整数n(1<=n<=100000)输出1, 2, 3, ..., n。每行一个数字。

循环基础题

#include <bits/stdc++.h>
using namespace std;
int main() { int n;cin >> n;for(int i=1;i<=n;i++)cout<<i<<endl;return 0;
}

2087http://www.51nod.com/Challenge/Problem.html#problemId=2087

输入一个正整数n(3<=n<=100000)输出3, 6, 9, ...,即输出所有<=n的,3的倍数。从小到大依次输出,只考虑3的正整数倍。每行一个数字。

循环内部判断是否是3的倍数

#include <bits/stdc++.h>
using namespace std;
int main() { ios::sync_with_stdio(false);int n;cin >> n;for(int i=1;i<=n;i++){if(i%3==0){cout<<i<<endl;}}return 0;
}

2088http://www.51nod.com/Challenge/Problem.html#problemId=2088

输入一个正整数n(1 <= n <= 100)输出一个由*组成的塔。

具体来说,输出共n行,第i行(从1开始数)有2i-1个*。在第i行的*前面,有n-i个空格。每行行尾是没有空格的。

双重for循环输出*,每行输出2*行数-1.

#include <bits/stdc++.h>
using namespace std;
int main() { int n;cin>>n;for(int i=1;i<=n;i++){for(int j=1;j<=2*i-1;j++){cout<<"*";}cout<<endl;}return 0;
}

2090http://www.51nod.com/Challenge/Problem.html#problemId=2090

如果一个数字的十进制表示中有7,我们就认为他是幸运数字。输入一个数字n(1 <= n <= 10^9)。判断n是否是一个幸运数字,如果是的话输出"Yes",否则输出"No"。

while循环,循环条件为n>0。每层循环判断个位是否为7(用%运算,%10取个位),最后n/=10。循环结束后,输出No(当是幸运数时,会在循环里结束程序,不会输出No)。

#include <bits/stdc++.h>
using namespace std;
int main() { int n;cin >> n;while(n>0){if(n%10==7){cout<<"Yes"<<endl;return 0;}n/=10;}cout<<"No"<<endl;return 0;
}

2091http://www.51nod.com/Challenge/Problem.html#problemId=2091

如果一个数字的十进制表示中有7,我们就认为他是幸运数字。输入两个整数L, R(1<=L<=R<=100000)输出所有满足L<=n<=R的幸运数字n。从小到大输出所有幸运数字,一行一个。特别注意如果区间内没有任何一个幸运数字,输出None。

这题是上 一题的改进,判断的方法一样,加个for循环和sum累加。

#include <bits/stdc++.h>
using namespace std;
bool xy(int a)
{while(a){int sum=a%10;if(sum==7)return 1;a=a/10;}return 0;
}
int main()
{long long n,m,sum=0;cin>>n>>m;for(int i=n;i<=m;i++){if(xy(i)){cout<<i<<endl;sum++;}}if(sum==0)cout<<"None";return 0;
}

2092http://www.51nod.com/Challenge/Problem.html#problemId=2092

输入一个长度为n(1 <= n <= 100000)数组,倒序输出他。数组中的元素ai满足(1≤ai≤100000)。

数组的基础题,倒序输出,i从n开始,到1结束。(别忘了要输出n)。

#include <bits/stdc++.h>
using namespace std;
int a[100005];
int main() { int n;cin>>n;for(int i=1;i<=n;i++)cin>>a[i];cout<<n<<endl;for(int i=n;i>=1;i--)cout<<a[i]<<endl;return 0;
}

51nod初学者首页1级题题解(1)相关推荐

  1. 51nod初学者首页1级题题解(5)

    2404 启蒙练习-2的幂整除 给一个正整数n,计算它最多能被2的多少次幂整除. i是计数器,每次加1,当不能被2整除时,就输出. 代码中有位运算,是为了提高效率(其实是装逼). #include & ...

  2. 51nod挑的部分5级题

    最近心情不好所以写代码来获得快落 4级题有点难做?然后就开始挑简单的5级题开始写 然后准备记录一些自己没有做出来 参考讨论区或者博客才做出来的题目 51nod_1189 阶乘分数 这个题参考了讨论区 ...

  3. 51nod初学者习题(一)

    -2136 打印图形 1 秒 131,072 KB 5 分 1 级题 由键盘输入一个大写字母(A 到 Z 中的任意一个),输出如下图所示由相关大写字母组成的图形.所输入的字母一定为输出文件的第一个字符 ...

  4. 2020校招4399游戏开发岗笔试编程题题解部分

    2020校招4399游戏开发岗笔试编程题题解 序号四 题目描述: 有n个人围成一圈,顺序排号.从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位. 输入描述: 一 ...

  5. 枚举求解单词方阵(洛谷P1101题题解,Java语言描述)

    题目要求 P1101题目链接 分析 可以用DFS做,但我立下了个Flag,所以就用了朴素的枚举来做.... 结果,我的天哪,做了好几个小时-- 其实这种地图题,真的适合 DFS or BFS or D ...

  6. 线性存储的最短平均检索时间(洛谷P1253题题解,Java语言描述)

    题目要求 P1253题目链接 分析 很像 ~洛谷P1223题题解~,也是一种类似SJF的贪心法. 排个序,由于两个不大于10000的数,乘起来还是int,就使用int属性吧. 数据量小,所以Scann ...

  7. 快速幂||取余运算【模板】(洛谷P1226题题解,Java语言描述)

    题目要求 P1226题目链接 分析 标准的快速幂取模算法板子,之前这个算法我在这篇文章中讲过了:<快速幂算法详解&&快速幂取模算法详解>. 这里选择使用比较简单的API实现 ...

  8. 队列模拟约瑟夫问题(洛谷P1996题题解,Java语言描述)

    题目要求 P1996题目链接 分析 以前就研究过"约瑟夫环"问题: <单循环链表求解约瑟夫环问题(Java语言描述)> <杀人游戏~约瑟夫环(洛谷P1145题题解 ...

  9. 两分数相乘后约分的Cantor表(洛谷P1482题题解,Java语言描述)

    题目要求 P1482题目链接 分析 据说本题是这题的升级版-- → P1014题题解 升级的地方其实就是相乘之后约分. 约分需要求解最大公约数,gcd()是吧-- 但我这里偏偏懒得写gcd,就想用Ja ...

最新文章

  1. Center OS 离线安装Mysql5.7
  2. VMware学习使用笔记
  3. Notification with Service Workers push events
  4. windowslive writer 发布问题
  5. python请输入第一个数请输入第二个数_Python小白学习之路(四)——第一次练习题...
  6. 【Linux系统编程】信号 (上)
  7. [你必须知道的.NET]第十九回:对象创建始末(下)
  8. treeview节点的复制 c# 1614606987
  9. android语音识别开源代码,android语音识别,有没有相应的源码,教程可以推荐啊?
  10. 老兵的十年职场之路(二)
  11. Android 驱动(3)---Android驱动开发知识储备
  12. 你见过最奇葩的人和事是什么?
  13. nginx html目录 404 盘符_nginx配置场景分析 location /
  14. mysql 一条sql 事务_MySQL的事务
  15. 如何用iso文件制作U盘启动
  16. matlab势场动态栅格路径规划,融栅格法和人工势场法的机器人三维路径规划
  17. 使用Vue开发Chrome插件
  18. 《转》android利用socket与java后台交互的设计与实现
  19. 2020武理计专上岸,拿下一等奖学金的曲折经历分享
  20. 经济适用型北京生活经验分享,80后北漂看过来

热门文章

  1. 前端富文本编辑器哪家强?我推荐Quill,搭配丰富插件使用美滋滋
  2. 计算机慢的解决方法,计算机速度慢的解决方法
  3. JS加密,JS混淆,JS混淆加密,JS不可逆加密,JS加密压缩
  4. C++之vector中元素的N种遍历
  5. html 单选按钮(input radio)
  6. Stata:标准误,标准误
  7. 【网页设计】期末大作业html+css(时尚服装网站)
  8. 软件测试web自动化项目实战——TPshop开源商城系统
  9. linux下使用mysql
  10. CSS stylus 中 hover 触发子元素