赞
踩
题目链接:http://lx.lanqiao.cn/problem.page?gpid=T9
给出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个。
第一行包含一个整数n。
第二行包含n个非负整数,为给定的数列,数列中的每个数都不大于10000。
第三行包含一个整数a,为待查找的数。
如果a在数列中出现了,输出它第一次出现的位置(位置从1开始编号),否则输出-1。
6
1 9 4 8 3 9
9
样例输出
2
数据规模与约定
1 <= n <= 1000。
根据题目要求所需要的输入格式对测试数据进行输入,第一行输入一个整数n,由数据规模与约定得出int 类型足以表示,定义int 类型的变量;第二行输入为n个非负整数,用unsigned int类型的数组存放,用for循环实现数据的输入;第三行输入需要查找的整数,定义一个int 类型的变量来存放。
本题目是查找第一次出现的整数的位置,并且下角标从1开始存放,需要判断的条件做一下限制,查找到后跳出循环。
对不符合的数据需要输出-1
#include<iostream> using namespace std; int main() { int n,findnum; cin>>n; unsigned int a[n]; for(int i=1;i<=n;i++) cin>>a[i]; cin>>findnum; unsigned int index=-1; for(int j=1;j<=n;j++) { if(a[j]==findnum) { index=j; cout<<index; break; } } if(index>n||index<0)cout<<-1; return 0; }
视频链接:https://www.bilibili.com/video/BV1jE411g76D
学习完本视频后,对蓝桥杯的认识更加深入,同时在练题过程中也体会到了平台对测试用例的一些小坑,测试数据很大,用到的数据类型要能存放需要的数据,不能出现存不下的情况。
本视频中提到了2016年蓝桥杯省赛B组第一题,知识点是for循环的使用,累加求和等,题目较为简单,需要注意的是for循环有两句以上的代码的时候要用大括号将代码写到一个代码块里。
题目链接:http://lx.lanqiao.cn/problem.page?gpid=T46
153是一个非常特殊的数,它等于它的每位数字的立方和,即153=111+555+333。编程求所有满足这种条件的三位十进制数。
按从小到大的顺序输出满足条件的三位十进制数,每个数占一行。
#include<iostream> using namespace std; int isequal(int n) { int sum=0; int x=n; while(n) { int tmp=(n%10)*(n%10)*(n%10); sum+=tmp; n/=10; } if(sum==x) cout<<sum<<endl; } int main() { for(int i=100;i<999;i++) isequal(i); //cout<<isequal()<<endl; return 0; }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。