第十四届蓝桥杯集训——练习解题阶段(无序阶段)-基础练习 查找整数
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-基础练习 查找整数
目录
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-基础练习 查找整数
前言
最近的一些文章都可能会很碎,写到哪里是哪里,过一阵子会具体的整理一遍,这里其它的类型题先往后排一排,因为蓝桥最后考的也就是对题目逻辑的理解能力,也就是dp分析能力了,所以就主要目标定在这里,最近的题目会很散,很多,基本上都是网罗全网的一些dp练习题进行二次训练,准备比赛的学生底子薄的先不建议看啊,当然,脑子快的例外,可以直接跳过之前的一切直接来看即可,只需要你在高中的时候数学成绩还可以那就没啥问题,其实,dp就是规律总结,我们只需要推导出对应题目的数学规律就可以直接操作,可能是一维数组,也可能是二维数组,总体来看二维数组的较多,但是如果能降为的话建议降为,因为如果降为起来你看看时间复杂度就知道咋回事了,那么在这里祝大家能无序的各种看明白,争取能帮助到大家。
基础练习 查找整数
资源限制
内存限制:256.0MB C/C++时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s
问题描述
给出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个。
输入格式
第一行包含一个整数n。
第二行包含n个非负整数,为给定的数列,数列中的每个数都不大于10000。
第三行包含一个整数a,为待查找的数。
输出格式
如果a在数列中出现了,输出它第一次出现的位置(位置从1开始编号),否则输出-1。
样例输入
6
1 9 4 8 3 9
9
样例输出
2
数据规模与约定
1 <= n <= 1000。
题解:这个题目说白了就是根据输入顺序进行遍历,我们只需要确定罗列的方式即可,如果放在数组里面遍历后直接看下角标,然后下角标+1输出即可,如果是字符串的话直接使用indexOf看看第一次出现的坐标就OK,当然这里也需要+1才能是正确的答案。
C语言
纯暴力处理就完事,C语言最快。
#include <stdio.h>
#define MAXN 10001
int n, a, ans;
int s[MAXN];
int main()
{
int i;
scanf("%d", &n);
for (i = 0; i < n; ++i)
scanf("%d", &s[i]);
scanf("%d", &a);
ans = -1;
for (i = 0; i < n; ++i)
{
if (s[i] == a)
{
ans = i + 1;
break;
}
}
printf("%d", ans);
return 0;
}
C++语言
其实这个输入方式还是比较麻烦的,但是查找起来直接就遍历后+1返回速度是很快的。
#include <iostream>
using namespace std;
const int MAXN = 10001;
int n, a, ans;
int s[MAXN];
int main()
{
cin >> n;
for (int i = 0; i < n; ++i)
cin >> s[i];
cin >> a;
ans = -1;
for (int i = 0; i < n; ++i)
{
if (s[i] == a)
{
ans = i + 1;
break;
}
}
cout << ans << endl;
return 0;
}
Java语言
nextLine还是很好用的呢。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
sc.nextLine();
int[] num=new int[n];
for(int i=0;i<n;i++){
num[i]=sc.nextInt();
}
sc.nextLine();
int x=sc.nextInt();
int result=-1;
for(int i=0;i<n;i++){
if(num[i]==x){
result=i+1;
break;
}
}
System.out.println(result);
}
}
Python语言
无论怎么算还是需要遍历看看的,最终+1完成结果输出。
x = eval(input())
a = []
n = input().split(" ")
for i in range(0,x):
a.append(int(n[i]))
y = eval(input())
try:
z = a.index(y)
except:
z = -2
print(z+1)
总结
这类小题一般蓝桥杯都会放1~2个的,这类题不能说是送分,很多孩子由于没有刷题所以解起来还是有一定难度的,但是对于努力刷题的孩子们来说就是很简单的了。
没有什么不付出就能拿到的结果,我们都是在负重前行,最终结果与自身先天的脑力有一定的关系,但是还是有很大一部分看自己后天的努力,其实从报名到比赛也就5个月左右,真正刷题的事件也就2个月,2个月回忆一下你真正的认真刷过题吗,如果你真的用尽所有的精力去努力了,那么我相信你最终的成绩一定会让你满意的,加油。
第六届——第十三届省赛题解
所有的题目都做了讲解,最难的有配套的视频,视频提供者是【2020级的弓家宜】先生。
第六届——第十二届省赛题解
所有题目均有题解,部分第10题非最优解,至少跑20%数据。
相关文章
- journalctl工具基础介绍
- HTTP协议的基础
- 《量子化学软件基础》习题(5)——BDF和ORCA中的CASSCF计算
- 第十四届蓝桥杯集训——if——配套基础示例
- 第十四届蓝桥杯集训——练习解题阶段(无序阶段)-基础练习 特殊回文数
- 第十四届蓝桥杯集训——练习解题阶段(无序阶段)-基础练习 杨辉三角形(最好的基础题,没有之一)
- 第十四届蓝桥杯集训——练习解题阶段(无序阶段)-基础练习 查找整数
- 第十四届蓝桥杯集训——练习解题阶段(无序阶段)-基础练习 字母图形
- 第十四届蓝桥杯集训——练习解题阶段(无序阶段)-基础练习 01字串
- 第十四届蓝桥杯集训——练习解题阶段(无序阶段)-基础练习 Fibonacci数列
- 华为昇思MindSpore首席架构师金雪锋:ChatGPT的哲学基础,维特根斯坦思想
- 问题 1470: [蓝桥杯][基础练习VIP]时间转换
- postgreSQL数据库基础 之 内连接和外连接实现操作
- Python服务端面试—Mysql基础考点详解编程语言
- Linux服务:解读基础功能(linux服务详解)
- 想了解机器学习?你需要知道的十个基础算法
- 范式常见问题MySQL 数据库设计中常以三范式为基础,但实际应用中也经常面临各种与反三范式有关的挑战和问题,请看重点分析
- MySQL轻松入门从零基础到快速上手(mysql一天入门)
- 零基础写Java知乎爬虫之将抓取的内容存储到本地