北邮机试 | bupt oj | Python List 0273

2018北邮计算机院机试真题 2018北邮计算机院机试真题(回忆版,答案仅供参考) 根据刚机试结束的同学回忆,今年北邮机试题目下,并附上本人解答。(应该有一些细节没考虑,如果发现问题,欢迎留言指正交流) 大神就当看个笑话 =。= Problem A 题目: 输入数据0-2的32次方范围,化成二进制,然后逆序这个二进制序列,转换成十进制。 测试数据: 2 输出: 1 测试数据: 10 输出... 阅读详情

题目链接:

https://blog.youkuaiyun.com/TQCAI666/article/details/86767987?tdsourcetag=s_pctim_aiomsg#Problem_D_Python_List_399

题目描述


在Python中,List (列表)是一种非常重要的数据结构。它与C/C++/Java中的数组有些类似,但支持添加新元素时的动态扩展。在这个问题中,你需要处理如下的几种对List的操作。

L=[]: 将名字为L的List清空。在这里,List 的名字是长度为1到10之间
的字符串(只包括大小写字母)。如果L原来不存在,这个语句相当于定义了一个名字为L的空列表。
L.append(x):向L的末端插入元素x。为方便起见,这里的x只会是[0, 65536]之间的整数。
L.sort():将L中的元素按升序排序。
L[id]:返回L中下标为id(id≥0)的值。下标是从0开始计数的。
给定若干Python语句,你的任务是对于每个形如L[id]的语句,输出它返回的值。


输入格式


输入数据包含多组测试数据。请注意各组测试数据之间是相互独立的。输入的第一行是一个整数T(T≤100),表示测试数据的组数。
每组测试数据第一行是语句的数量N (N≤100)。接下来N行,每行一个python语句。测试数据保证只会出现上述四种语句,语句中间不会出现空格。一个List在被使用前一定会被先定义。

 

输出格式


对于每个查询,输出查找的L[id]的值。如果id超出了当前List 的下标范围,;输出一行ERROR。

 

样例输入

2
5
a=[]
a.append(0)
a.append(1)
a[0]
a[1]
8
lista=[]
lista.append(123)
lista.append(65)
lista[0]
lista.sort()
lista[0]
listb=[]
listb[0]

样例输出

0
1
123
65
ERROR

 

我的题解是看了大佬的答案后,自己照着思路写的

#include<bits/stdc++.h>
using namespace std;
map<string,vector<int> > nameList;
void init(string str){
	int pos = str.find("=");
	string name = str.substr(0,pos);
	nameList[name]=vector<int>();
}
void append(string str){
	int pos=str.find(".");
	int len=str.length();
	string name = str.substr(0,pos);
	//xx.append()
	string s = str.substr(pos+8,len-2-(pos+8)+1);
	int num;
	sscanf(s.c_str(),"%d",&num);
	nameList[name].push_back(num);
}
void _sort(string str){
	int pos = str.find(".");
	string name = str.substr(0,pos);
	sort(nameList[name].begin(),nameList[name].end());
}
void index(string str){
    int pos=str.find("[");
    string name = str.substr(0,pos);
    int len = str.length();
    if(nameList.count(name)){
        string s = str.substr(pos+1,len-2-(pos+1)+1);
        unsigned int idx;
        sscanf(s.c_str(),"%d",&idx);
        //vector<int> &v=nameList[name];
        if( idx>=0 && idx<nameList[name].size()){
            cout<<nameList[name][idx]<<endl;
        }
        else{
            cout<<"ERROR"<<endl;
        }
    }
    else{
        cout<<"ERROR"<<endl;
    }
}
int main(){
	int t,n;
	cin>>t;
	while(t--){
		cin>>n;
		while(n--){
			string str;
			cin>>str;
			if(str.find("=[]")!=string::npos){
				init(str);
			}
			else if(str.find(".append(")!=string::npos){
				append(str);
			}
			else if(str.find(".sort(")!=string::npos){
				_sort(str);
			}
			else{
				index(str);
			}
		}
	}
	return 0;
}
BUCTOJ——算法2-1:集合union 很难知道正确答案的标准究竟是什么?明明结果是对的却显示超限。 阅读详情

相关推荐

北邮OJ-273. Python List-14计院上机(第二套)D

又用到之前编的NameForm技巧了。这题不难就是很杂,字符串与下标映射表的管理,线性表的管理,字符串处理,简单排序。题目#include <cstdio> #include <cstring> #include <algorithm> #include <vector> #define MAXSIZE 50 using namespace std;char operation[30]; vecto

听风就是雨 964

北邮考研复试 | 机试 | 2014年北邮计算机院机试(上午)

北邮考研复试 | 机试 | 2014年北邮计算机院机试(上午); A 众数;B 旋转图像;C 网络的核;D Python List

我是一块小石头 1665

北邮机试往年试题汇总 | 北邮复试 | BUPT OJ

这里我汇总了绝大部分北邮BUPT OJ 上的中文题,中文题也就都是往年题。有从10年开始到14年的所有机试往年题。我的博客里有上述文档里所有的题。谁知道怎么降低下载积分?现在看不到这个选项了

北邮机试 | bupt oj | 273. Python List-计算机一2014

Python List 题目描述 在Python中,List (列表)是一种非常重要的数据结构。它与C/C++/Java中的数组有些类似,但支持添加新元素时的动态扩展。在这个问题中,你需要处理如下的几种对List的操作。 L=[]: 将名字为L的List清空。在这里,List 的名字是长度为1到10之间 的字符串(只包括大小写字母)。如果L原来不存在,这个语句相当于定义了一个名字为L的空列表。 L...

weixin_46274692的博客 236

北邮pythonoj作业-输入行和列树打印田字格

北邮pythonoj作业-输入行和列树打印田字格

北邮电子院大二计算机实验(万能老师)选题二:python股票融资融券分析(爬虫下载好的数据)xlsx格式

实验数据:北邮电子院计算机实习 实验数据:北邮电子院计算机实习 北邮电子院大二计算机实验(万能老师)选题二:python股票融资融券分析(爬虫下载好的数据)xlsx格式

BUPT OJ|305. 网络的核-计算机一2014

题目来源 北邮OJ 使用FLoyd算法即可 【注意事项】 使用memset()函数初始化二维数组时要千万小心: 1.二维整型数组利用memset()函数初始化时,只能初始化为0或者-1,否则二维整型数组的值将为随机数。 2.二维char数组利用memset()函数初始化时不受限制,可初始化为任意字符。 #include<bits/stdc++.h> using namespace std; /*Input: 2 3 3 1 2 1 3 2 3 4 2 1 2 2 3 */ int mai

lrv的博客 198

AM243x多核MCU启动流程解析与OSPI Flash烧录实战

嵌入式系统开发中,引导加载器是芯片上电后执行的第一段软件,负责初始化硬件、加载操作系统或应用程序。其工作原理通常遵循多级引导链,从ROM固件到用户可定制的二级引导程序,逐级建立完整的软件运行环境。这一机制的技术价值在于实现可靠的系统启动、支持安全校验,并为多核异构架构提供协同基础。在应用场景上,引导加载器广泛应用于工业控制、汽车电子和物联网设备,确保设备能从非易失性存储器中自主启动。本文聚焦于TI AM243x这类高性能多核MCU,深入剖析其包含RBL和SBL在内的三级启动流程,并详细演示如何通过UART接

weixin_28703451的博客 582

BUPT OJ 寻找宝藏

水题 #include #include using namespace std; class node {public: int parent; int branches; node() { branches=0; parent=-1; } }; const int MAXSIZE = 10000; class tree {public: node point[MAXSIZ

wcnmcsdn的博客 839

Maxwell参数化建模

MAXWELL 2019 R3 参数化建模 参数化建模的优势 所谓参数化,就是在电机本体设计中涉及到的各类参数变量化,而每个变量之间又存在一定的制约关系,这样只需修改其中某个或者某些变量就可以做到对整个电机模型合理地改动。 参数化举例 以表贴式电机为例,先画电机定子,如上所示,依次进行后会弹出下面的选项框 上图就是描述电机尺寸的各类参数,接下来进行参数化。 回车ENTER,并给变量ds赋值。 赋值好后,回车ENTER 左下角properties里面就有我们新建立的变量ds了。 继续将剩余的参数

qq_41387280的博客 1万+

Minitab正交试验设计:从入门到精通的完整指南

本文提供了一份使用Minitab进行正交试验设计的完整指南。从正交试验省时省力的原理讲起,详细介绍了在Minitab中创建正交表、填入数据、执行分析(包括解读ANOVA和P值)以及寻找最优参数组合的全流程。文章旨在帮助读者,特别是工艺优化和研发人员,快速掌握这一高效工具,从而用最少的实验次数锁定关键影响因素,提升工作效率与成果。

weixin_29201313的博客 461

BUPTOJ 0091 文件系统

很基础的树题。因为不熟C++语法和特性,卡了相当一阵子。 Java用惯了,还真是不习惯C++的内存管理。Java中内存管理是由垃圾回收机制负责的,以后用不到的,它自动收回,以后还会用到的,你不用担心它的内存会被占用。 但是C++不一样,出了函数域,你再留着它局部变量的指针又如何,该给你占用还给你占用,根本没人管。搞了半天才懂,哦,这里要用malloc。 弄了个左孩子右兄弟二叉树来模拟树形目录

飞扬天下 890

宇树G1嵌入式软件架构及技术实现

该架构通过硬件加速(FPGA)+确定性调度(RTX5)的组合,在1ms控制周期内完成从传感器采集到43轴输出的全链路处理,相比波士顿动力系统缩短40%的着地稳定时间。,结合ARM Cortex-R5与FPGA的异构计算能力,实现43自由度1kHz实时控制。

m0_60674045的博客 4310

计算机考研用python_2014北邮计算机考研复试上机题解(上午+下午)

据江湖传闻,2014年计算机机试分为了上午、下午两批。先来看上午的题目。A.众数-计算机一2014直接统计就可以。AC代码:#include#includeusing namespace std;int a[105];int main(){int tes;int n,i;while(~scanf("%d",&tes)){while(tes--){scanf("%d",&n);for...

weixin_39559079的博客 531

ESP32实战指南:SPI驱动ADXL345三轴加速度传感器的精准数据采集与姿态解算

本文详细介绍了如何使用ESP32通过SPI接口驱动ADXL345三轴加速度传感器,实现精准数据采集与姿态解算。从硬件连接到SPI通信优化,再到数据处理和低功耗策略,提供了全面的实战指南。特别适合物联网开发者和硬件工程师参考,帮助快速掌握传感器数据采集技术。

vim8coder的博客 1041

《Python入门到精通》函数详解

函数就是一段「封装」起来的「代码」,目的是提高代码的「模块性」和「复用性」。 2、函数的参数 2.1、变量的就近原则 2.2、传递参数 2.3、形参和实参 2.4、位置参数 2.5、缺省参数 2.6、可变类型和不可变类型 2.7、关键字参数 3、匿名函数 4、函数的返回值

wangyuxiang946的博客 1万+

2014北邮网研上机试题B

Problem B 最小堆 题目描述 给定一棵带权二叉树,请判断它是不是一个最小堆。 一棵二叉树是一个最小堆,当且仅当对于树上任意一个节点,它的权值都小于或等于以它为根的子树中的所有权值。 输入格式 输入数据第一行是一个整数T(1<=T<=100),表示测试数据的组数。 对于每组测试数据: 第一行是一个整数N(1<=N<=100),表示树的节点个数。 接下来...

cqhblg的博客 301

3步!Spring Boot+OCR引擎秒提身份证/营业执照?手把手教你从零实现!

OCR技术革新文档识别效率 本文演示了如何利用Spring Boot+Tesseract OCR+OpenCV构建自动化文档识别系统。相比传统人工录入,OCR技术可实现: 5秒极速提取身份证/营业执照关键信息 精准识别中文文本(准确率90%+) 正则过滤自动匹配结构化数据 技术要点: OpenCV图像预处理(灰度化+二值化) Tesseract多语言OCR识别 正则表达式精准提取证件号码 效率提升达100倍,错误率降低90%,适用于金融、政务等需要批量处理证件的场景。

java专栏 903

校外如何登陆北邮oj

由于北邮oj不对外开放,准备复试的我需要进入北邮oj;其他小朋友也有这个想法。故写此博客。 先找北邮土著借北邮账号,包括一些认识的同学,直系学长学姐,他们都很乐意帮助的~ 下面是校外进北邮校内网的方法,做到第三步就可以了。(有些关键词屏蔽了,我发不出来) https://nic.bupt.edu.cn/content/content.php?p=5_13_337 然后右上角url填写再进入...

我是一块小石头 1万+

用Playwright MCP让AI帮你完成所有浏览器自动化

Playwright MCP(Model Context Protocol)是微软基于 Playwright 框架推出的 AI 浏览器自动化新协议。它通过结构化快照数据和自然语言指令结合大型语言模型(如 GPT),实现无需编码的网页交互。无论你是要测试登录流程、抓取价格数据,还是用 AI 远程控制浏览器,Playwright MCP 都能大幅降低门槛,让“说人话”也能驱动自动化脚本。本篇将从功能介绍、技术架构、使用方法到实际场景,带你全面理解这一自动化革命。

todoitbo的博客 3万+

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

北邮2018计算机院考研复试机试上机题解+结果统计

昨天刚考完,oj上题目已经看不了了,不过交的代码都还在,趁热回忆一下 整体情况: 共169人,第四题全军覆没,8人3A,77人2A,40人1A,44人0A。 最后的排行榜(id截掉了): problem A二进制数字翻转 输入数据组数t 每组数据输入一个十进制数x(0<x<2^32),将其二进制位反转(共32位),然后输出对应的十进制数 签到题...

深度匹配树的博客 2万+

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

北邮计算机学院2017届复试经验分享

北邮计算机学院2017届复试经验分享 初试完了再来担心复试,有看复试经验的时间还不如多做两道数学题! 导师:了解导师的情况,最差也不要找一个人不好的老师,其次尽量选自己喜欢的方向,出成绩以后尽早联系导师,加一加群,不要信息闭塞,有学长学姐就更好了,礼貌的咨询他们。 考完试对一下答案,如果差不多能过就可以准备一下复试了,因为北邮的复试尤其是机试挺难的。 机试:很重要,...

qijingpei的博客 1万+

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

2016北邮计算机机试

Problem A 1.三元组 问题描述: 给你一个长度为m的数组(数组元素从0到m-1),如果数组里有a[i]+a[j]==a[k](i,j,k大于等于0并且小于m)便称之为三元组。现在给你一个数组,让你求三元组的个数。 例如m为2,里面的元素为(0,0) 那么三元组为 (a[0],a[0],a[0]) (a[0],a[0],a[1]) (a[0],a[1],a[0]) (a[0],a[1],a...

AIRJK的菜鸡自闭所 383

2019北邮计算机院机试真题

目录计算机院机试真题Problem A 二进制Problem B 二叉树Problem C 最短路径Problem D 方块阵 计算机院机试真题 计算机院的机试题真难,没有4A的,第四题的题目看了一下,好像是矩阵的,题目记不清了,如果你考计算机院也不建议你准备第四题。18年的第四题是动态规划,也是0A。今年网研的机试题比较简单,有不少4A的。 Problem A 二进制 题目描述 32位二进制数 ...

关注网络安全、云原生安全 7554

北邮机试 | bupt oj | 93. 中序遍历序列

中序遍历序列 时间限制 1000 ms 内存限制 65536 KB 题目描述 给出一个序列,判断该序列是不是某二叉搜索树的中序遍历序列,如果是输出"Yes",否则输出"No"。 一颗带权二叉树是一颗二叉搜索树(二叉排序树),当且仅当对于任意一个节点,他的左子树中的所有权值小于当前节点的权值,且它的右子树中的所有权值均大于当前节点的权值。 输入格式 第一行T(T≤10)代表数据组数。 每组...

我是一块小石头 408

北邮OJ 108 虚数

108. 虚数 时间限制 1000 ms 内存限制 65536 KB 题目描述 给你一个复数集合{Aj+i*Bj},保证Aj和Bj都是整数,初始为空集。 每次会给你如下两种操作中的一种:        1."Insert x+iy",其中x,y都是整数。表示在集合中加入一个复数 x+iy,同时输出此时集合的大小;        2."Pop"。如果集合为空集直接

ruzhuxiaogu的专栏 1381
上一篇: C语言:gets()前为什么需要一个getchar() scanf与gets之间为什么需要一个getchar
下一篇: 树形结构 | 北邮机试 | bupt oj | 91. 文件系统
stone_fall
博客等级 码龄9年 230粉丝 256原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值