当前位置: 首页 > news >正文

面向对象的程序语言设计-2021春季学期面向对象程序设计第十四周上机练习#1

Set

描述

现有一整数集(允许有重复元素),初始为空。我们定义如下操作:
add x 把x加入集合
del x 把集合中所有与x相等的元素删除
ask x 对集合中元素x的情况询问
对每种操作,我们要求进行如下输出。
add 输出操作后集合中x的个数
del 输出操作前集合中x的个数
ask 先输出0或1表示x是否曾被加入集合(0表示不曾加入),再输出当前集合中x的个数,中间用空格格开。

输入
第一行是一个整数n,表示命令数。0<=n<=100000。后面n行命令,如Description中所述。

输出
共n行,每行按要求输出。

输入样例 1

7
add 1
add 1
ask 1
ask 2
del 2
del 1
ask 1

输出样例 1

1
2
1 2
0 0
0
2
1 0

提示

Please use STL’s set and multiset to finish the task

问题分析
根据提示及题目要求,我们需要建立一个multiset(允许有重复元素)来储存题目所给的整数集。另外,由于操作ask需要输出0或1表示x是否曾被加入集合(0表示不曾加入),因此另外建立一个set储存出现过的元素。

std::multiset<int> B;
std::set<int> C;

之后根据输入的字符串来运行相应的操作,这里参考了C++ 根据字符串 调用同名函数这篇博客,选择使用map来建立操作名与对应函数的关系。

typedef void (*fun)(int);
std::map<string,fun> A;
void buildmap()
{A["add"]=&add;A["del"]=&del;A["ask"]=&ask;
}

然后再根据题目要求编写好每个操作对应的函数即可。

void add(int x)
{B.insert(x);C.insert(x);cout<<B.count(x)<<endl;
}void del(int x)
{cout<<B.count(x)<<endl;while(true){if(B.find(x)==B.end())break;elseB.erase(B.find(x));}
}void ask(int x)
{if(C.find(x)==C.end())cout<<"0"<<" ";elsecout<<"1"<<" ";cout<<B.count(x)<<endl;
}

值得注意的是buildmap()应该放在三个操作函数后面,不然会出现函数未定义的错误。
最后附上源码:

#include <iostream>
#include <cstring>
#include <set>
#include <map>
using namespace std;typedef void (*fun)(int);
std::multiset<int> B;
std::map<string,fun> A;
std::set<int> C;void add(int x)
{B.insert(x);C.insert(x);cout<<B.count(x)<<endl;
}void del(int x)
{cout<<B.count(x)<<endl;while(true){if(B.find(x)==B.end())break;elseB.erase(B.find(x));}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-3100.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

拉伯配资6月1日策略

5月回想&#xff1a;在5月份的战略中&#xff0c;我们认为其时胶着的商场可能在5月会有所改动。从实践表现来看&#xff0c;5月下旬商场明显出现了一些活泼做多的信号&#xff0c;商场也选择了向上打破。上证指数上涨超4%&#xff0c;深圳成指上涨近3%。 行情判别&#xff1a;从…...

微信小程序趋势及前景,大厂直通车!

最近看到群里看到一个女生&#xff0c;讲述了她从开始选择Android&#xff0c;经过非常努力的学习和挣扎&#xff0c;然而最后面对当前的环境却不得不放弃。看完以后真的非常替她感觉惋惜&#xff0c;如果早几年入行可能结果会比现在好很多&#xff0c;但可惜&#xff0c;这就是…...

LAMP源码编译安装(Apache,Mysql,PHP,论坛安装详解)

目录前言一.LAMP概述1.LAMP架构2.LAMP组件的主要作用二.Apache httpd服务编译安装1.关闭防火墙&#xff0c;将安装Apache所需软件包传到/opt目录下2.安装环境依赖包3.配置软件模块4.编译及安装5.优化配置文件路径&#xff0c;并把httpd服务的可执行程序文件放入路径环境变量的目…...

[Jetson][转载]jetson上安装pytorch+torchvision教程

1. Jetpack默认已安装opencv、cuda、cudnn&#xff0c;故只需再安装pytorch即可&#xff0c;留意jetson是arm架构&#xff0c;需要下载对应的安装文件加以安装  2. pytorch的安装   查询Jetpack的版本 sudo -H pip3 install jetson-stats jetson_release   pytorch的whl文…...

sort在不同浏览器下执行效果

sort在不同浏览器下执行效果 let arr [{name: zhangsan, age: 40},{name: lisi, age: 20},{name: laowang, age: 50},{name: xiaoli, age: 60},{name: xiaojin, age: 30}, ] arr.sort((a, b) > b.age > a.age);上面这段代码在谷歌浏览器中&#xff0c;是不会进行排序的…...

设计模式导读助记

各个设计模式的详细介绍都已经完成&#xff0c;但是不经常用总会忘&#xff0c;所以我想用 一句话 总结设计模式&#xff0c;思考模式的真正意图&#xff0c;再用 一点提示 来思考代码如何实现 写在前面 我整理的设计模式这一个系列&#xff0c;主要是结合了以下几本书 : 《设…...

RT-Thrad|STM32F103+ESP8266 S01+RT-Thread联网之环境搭建(1/3)

文章目录前言硬件准备百问网STM32F103ESP8266 01SESP8266 介绍ESP8266 01S技术规格参数软件准备下载安装 Keil μVision5Pack Installer安装 ST-Link 驱动获取RT-Thread源码下载安装 RT-Thread env 工具文章列表 RT-Thrad|STM32F103ESP8266 S01RT-Thread联网之环境搭建(1/3)RT…...

Flask初体验

Flask初体验 flask框架是一个微型框架&#xff0c;但是微型框架不代表功能比其他框架少&#xff0c;并且flask的约束也比较少&#xff0c;使用更加方便。Flask安装 pip install flask 废话不多说直接上代码 from flask import Flaskapp Flask(__name__)app.route("/&qu…...

天眼查怎么删除信息_天眼查删除信息的方法介绍

天眼查信息怎么删除 天眼查风险信息怎么清除 天眼查问答信息怎么删除 天眼查法律诉讼信息可以删吗 天涯查上的信息删除怎么操作&#xff0c;天眼查成立于2014年&#xff0c;至今发展迅速&#xff0c;已经帮助了无数的企业和消费者&#xff0c;那么很多企业的天眼查信息有时候需…...

5.Random

用于生产一个随机数 步骤&#xff1a; 1.导包 import java.util.Random; 2.创建对象 Random random new Random();3.获取随机数 int number random.nextInt(10); //随机数的取值范围是[0,10),即大于等于&#xff0c;小于10 上面不能获取到10&#xff0c;若要获取到10&…...

Xxl-Job调度器原理解析

项目解析源码地址&#xff1a;https://gitee.com/lidishan/xxl-job-code-analysisxxl-job版本&#xff1a;2.3.0Xxl-Job分为执行器、调度器。而我们平时的客户端就属于一个执行器&#xff0c;执行器启动的时候会自动注册到调度器上&#xff0c;然后调度器进行远程调度。调度器初…...

51单片机利用锁存器控制数码管显示年月日时分秒

数码管模块中的两片74hc573&#xff0c;一片锁存段码&#xff0c;一片锁存位码&#xff0c;这样才能驱动8位数码管。74hc573是锁存器&#xff0c;用于数码管显示时通常是采用段选、片选共用同一组并口的驱动方式。 驱动数码管需要两个信号&#xff0c;一个是段选信号&#xff…...

webrtc之SVC实现(十)

一、概念 SVC&#xff08;可适性视频编码或可分级视频编码&#xff09;是传统H.264/MPEG-4 AVC编码的延伸&#xff0c;可提升更大的编码弹性&#xff0c;并具有时间可适性&#xff08;Temporal Scalability&#xff09;、空间可适性&#xff08;Spatial Scalability&#xff09…...

LeetCode 数值的整数次方

实现 pow(x, n) &#xff0c;即计算 x 的 n 次幂函数&#xff08;即&#xff0c;xn&#xff09;。不得使用库函数&#xff0c;同时不需要考虑大数问题。 示例 1&#xff1a; 输入&#xff1a;x 2.00000, n 10 输出&#xff1a;1024.00000 示例 2&#xff1a; 输入&#xf…...

python 继承和多态

在已有类的基础上创建新类&#xff0c;这其中的一种做法就是让一个类从另一个类那里将属性和方法直接继承下来&#xff0c;从而减少重复代码的编写。提供继承信息的我们称之为父类&#xff0c;也叫超类或基类&#xff1b;得到继承信息的我们称之为子类&#xff0c;也叫派生类或…...

JAVA 基础学习之 继承与方法覆写

1 继承引入​​​​​​​ 三个类都有重复的代码&#xff0c;可以把这共同的代码抽出去&#xff0c;抽出去放到另外一个类里面&#xff1b;下面的3个类和上面的类需要发生一点关系&#xff08;继承&#xff09;&#xff0c;上面的类叫做 父类&#xff08;超类&#xff0c;基类&…...

个性化个人主页html5模板

介绍&#xff1a; 个性化个人主页html5模板 网盘下载地址&#xff1a; http://kekewl.net/tARDuX5n02U0 图片&#xff1a;...

java IO教程《三》

缓冲区流讲解(Buffered) 什么是缓冲区&#xff1f; 缓冲流&#xff0c;也叫高效流&#xff0c;是对4个基本的File流的增强&#xff0c;所以也是4个流&#xff0c;按照数据类型分类&#xff1a; 字节缓冲流&#xff1a;BufferedInputStream&#xff0c;BufferedOutputStream字…...

Java SPI思想梳理

原文出处&#xff1a;https://zhuanlan.zhihu.com/p/28909673 为什么要使用spi 面向的对象的设计里&#xff0c;我们一般推荐模块之间基于接口编程&#xff0c;模块之间不对实现类进行硬编码。一旦代码里涉及具体的实现类&#xff0c;就违反了可拔插的原则&#xff0c;如果需要…...

elementUI-Tree 树形控件的使用

elementUI-Tree 树形控件的使用 实现效果&#xff1a; 控件的官方使用说明 控件要求返回的数据结构 {"success": true,"code": 20000,"message": "成功","data": {"items": [{"id": "1394579386…...

初步理解类加载运行机制和类加载过程,全套教学资料

一道面试题 让我们开门见山&#xff0c;直面主题&#xff1a;Dubbo 服务里面有个服务端&#xff0c;还有个消费端你知道吧&#xff1f; 服务端和消费端都各有一个线程池你知道吧&#xff1f; 那么面试题来了&#xff1a;一般情况下&#xff0c;服务提供者比服务消费者多吧。…...

[BJDCTF2020]The mystery of ip(ssti模板注入题目)

项目场景&#xff1a; 链接http://node3.buuoj.cn:29669/index.php 问题描述&#xff1a; 观察页面找到三个链接&#xff0c;点开flag和hint看看&#xff0c;发现flag那个页面窃取了客户端的ip地址&#xff0c;这题的题目是“The mystery of ip”IP的神秘&#xff0c;看来解…...

Vue3.0 过度和动画

一、css基础动画 animation、keyframes 的用法 菜鸟教程 animation 传送门 https://www.runoob.com/cssref/css3-pr-animation.html .animation{position: absolute;border: 1px solid red;animation: leftrightleft 10s infinite;transition: all 3s;}keyframes leftrightlef…...

设计一个类BankAccount描述银行储户信息

设计一个类BankAccount描述银行储户信息&#xff0c;包含3个成员变量&#xff1a;储户的ID&#xff0c;姓名和余额&#xff0c;编写构造方法实现成员变量初始化。然后编写程序Exam3&#xff0c;创建一个HashMap对象&#xff0c;存放3个BankAccount对象&#xff0c;每个BankAcco…...

RHEL6.8在虚拟机无法自动识别网卡问题

今天我遇到克隆的虚拟机新增网卡无法被系统自动识别&#xff0c;排查和解决方式如下&#xff1a;1、查 看网卡的MAC地址 cat /etc/udev/rules.d/70-persistent-net.rules 2、编 辑/etc/sysconfig/network-scripts/ifcfg-eth0网卡文件&#xff0c;HWADDR地址一定得对应上网卡的M…...

HTML的列表、表格与表单标签的使用

列表、表格和表单标签的常用属性归纳&#xff0c;如下图所示&#xff1a; 一、列表标签举例 列表标签的应用&#xff0c;源代码如下所示&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta htt…...

关于Apple Silicon-M1的进阶解读

如果大家对文章感兴趣&#xff0c;欢迎转发&#xff0c;收藏&#xff0c;评论。感谢支持&#xff01; 如果你对计算机科学和科技类知识感兴趣&#xff0c;请 Follow【老铁的最新号外】各平台同名&#xff0c;持续更新&#xff0c;感谢支持。 1. 苹果为什么要自研Apple Silicon-…...

剖析Android开发未来的出路在哪里,一篇文章帮你解答

前言 在这个网络发展快速的时代&#xff0c;我想问为什么你选择做程序员&#xff1f;有人说因为不善交际&#xff0c;也有人说最火的行业互联网&#xff0c;最好的职业程序员。确实在这个繁荣的行业&#xff0c;只要你自己不下船技术不水&#xff0c;就可以衣食无忧&#xff0…...

封装普通数字格式转为会计金额格式的方法及使用

封装普通数字格式转为会计金额格式的方法及使用的流程如下 一、把方法封装在format.js里 // 普通数字转会计金额格式 function moneyFormat(num) {// 判断传进来的数字是否为非空数字if (!isNaN(parseFloat(num))) {var newNum Number(Number(num).toFixed(2)).toLocaleStri…...

第七章——实现-测试1【应聘准备可看看】

第七章——实现-测试12 软件测试基础2.1 测试的目标&#xff08;尽可能&#xff09;2.2 测试原则2.3 测试方法2.4 测试步骤2.5 测试阶段的信息流3 单元测试3.1 测试重点3.2 代码审查3.3 计算机测试4 集成测试4.1 自顶向下集成4.2 自底向上集成5 确认测试5.4 软件配置复查5.3 Al…...

三、【redux】异步action

文章目录1、不成熟的异步修改1.1、CODE1.1.1、count_action.js1.1.1、count_reducer.js1.2、异常2、异步action代码修正2.1、store.js2.2、count_action.js3、小总结action分两类&#xff1a; 同步&#xff1a;指action的值是Object类型的一般对象异步&#xff1a;指action的值…...

NX 和PRO/E的比较――高手的对决第四回合

NX 和PRO/E的比较――高手的对决第四回合 2010年06月24日myth2000:再再致bengok, 既然你这么有兴趣,那我就继续陪你写下去: 那我先补充一下&#xff0c;我的证书是设计师认证&#xff0c;UGS的证书是全英语的&#xff0c;证书的title是“UGS product advanced design recognit…...

新型威胁分析与防范研究

【引言】本文是我在5月份的时候对之前的APT研究的一个总结和综述&#xff0c;并在公司内刊发表。现发表在我的博客上。本文内容比付印的版本的内容&#xff08;当时受限于版面&#xff09;更丰富、全面。新型威胁分析与防范研究Last Modified 2013/5/26by yepeng【摘要】本文通…...

Siemens Unigraphics NX (UG NX) 7.5 简体中文版

UG&#xff08;Unigraphics NX&#xff09;是Siemens PLM Software公司出品的一个产品工程解决方案&#xff0c;它为用户的产品设计及加工过程提供了数字化造型和验证手段。Unigraphics NX针对用户的虚拟产品设计和工艺设计的需求&#xff0c;提供了经过实践验证的解决方案。UG…...

(UG NX)Siemens Unigraphics NX 7.5 简体中文版

UG&#xff08;Unigraphics NX&#xff09;是Siemens PLM Software公司出品的一个产品工程解决方案&#xff0c;它为用户的产品设计及加工过程提供了数字化造型和验证手段。Unigraphics NX针对用户的虚拟产品设计和工艺设计的需求&#xff0c;提供了经过实践验证的解决方案。UG…...

一个硅谷网工的四年打怪升级史!

...

【IoT】创业:智能硬件企业如何开始?

发布新的智能硬件产品是一个漫长而艰难的旅程&#xff0c;产品开发从来都不是一个平稳的线性过程。 但对于个人或小型团队来说&#xff0c;互联网时代会比以往任何时候都更容易开发出惊艳的电子产品。 1 – 前期工作 在进入实际的产品开发步骤之前&#xff0c;你必须完成一些前…...

Python学习:lambda,sort,filter,map,递归函数的运用

1.lambda 形式: lambda 参数:返回值 f lambda x,y: x*yprint(f(2,4))注意: 函数的参数可以有多个. 多个参数之间⽤用逗号隔开匿名函数不管多复杂. 只能写一行, 且逻辑结束后直接返回数据返回值和正常的函数一样, 可以是任意数据类型所有的匿名函数都没有名字,统一称为lambda…...

AI公司为什么投身房地产?

10月13日&#xff0c;央视曝光科大讯飞非法侵占安徽扬子鳄国家级自然保护区&#xff0c;以建设培训基地为名开发房地产。也就是说&#xff0c;科大讯飞在用人工智能、高科技等名义&#xff0c;以科研产业为由&#xff0c;在大量“圈地”。 可以看到的大背景是&#xff0c;很多非…...

房地产电话销售资料

房地产电话销售销售开场白对于不同公司都有一套自己的流程&#xff0c;但无非都是&#xff1a;**先生/小姐&#xff0c;您好&#xff01;我是***公司的**&#xff0c;我给您推荐**&#xff0c;......电话销售有一个弱点就是除了声音之后你不能判断对方的反应&#xff0c;并及时…...

地产行业综合集成项目剖析

中国企业的信息化现状尤其是集团的企业均已经走过从无到有&#xff0c;从有到散的过程&#xff0c;而对于大多数企业而言不是没有系统&#xff0c;而是系统价值难以外显。在企业信息化建设过程中&#xff0c;信息化建设不断发展&#xff0c;伴随企业信息化系统建立&#xff0c;…...

房地产行业大数据分析有哪些作用

在房地产行业&#xff0c;有一个明显的迹象表明&#xff0c;数据分析正在发挥更多的作用。例如&#xff0c;房地产企业通过使用数据挖掘技术&#xff0c;从不同的阶层了解人们的住房需求&#xff0c;并做出改变以适应不同的住房需求。交易价格、上市价格、数量和其他关键指标都…...

项目开发流程_【直播回放】房地产开发项目全流程全税种税收筹划

致CFO&#xff1a;今天不税筹&#xff0c;明天就愁税为了支持企业发展&#xff0c;国家出台了诸多税收优惠政策。但因不同行业税种多样&#xff0c;如房地产业涉税就有20余种&#xff0c;如何做到用好优惠政策&#xff0c;优化缴税结构&#xff1f;避免重复纳税&#xff0c;降低…...

2022年广东省房地产经纪人(房地产经纪职业导论)练习题及答案

单选题 1、房地产经纪机构风险管理规避要以(A)为主。 A.预防风险 B.控制风险 C.分散风险 D.转移风险 2、 房地产经纪活动的基本类型是(A)。 A.房地产居间与房地产代理 B.房地产居间与房地产行纪 C.房地产行纪与房地产居间 D.房地产代理与房地产行纪 3、向已经成交的…...

R语言关于房地产数据清洗

> library(readxl) #加载读取excel包 > dataread_excel("E:/R/房地产招聘1.xlsx") #读取数据 > str(data) #查看数据结构 Classes ‘tbl_df’, ‘tbl’ and data.frame: 929 obs. of 11 variables:$ 招聘岗位 : chr "新媒体运营经理" …...

2022年广东省房地产经纪人(房地产经纪业务操作)练习题及答案

一、单选题 1、 对房地产市场调研的理解最正确的是(B)。 A.市场调研是运用科学的方法有目的、有计划的收集各种情报 B.市场调研的目的是为管理决策部门提供参考依据 C.市场调查的内容广 D.调研的服务对象是个人 2、 在一些财务监管制度不够完善的公司&#xff0c;房地产经…...

房地产估价师挂靠协议书

房地产估价师挂靠协议书 甲方&#xff1a; 地址&#xff1a; 法定代表人&#xff1a; 电话&#xff1a; 乙方&#xff1a; 身份证号码&#xff1a; 电话&#xff1a; 为壮大甲方技术队伍&#xff0c;乙方同意将本人获得的房地产估价师…...

商业地产培训

https://wenku.baidu.com/view/fa2b9342d1f34693dbef3ea8.html?fromsearch转载于:https://www.cnblogs.com/ada-openmind/p/7685188.html...

SpringBoot集成mybatis分包配置多数据源

从今天开始我分享一下配置多数据源的多种方式&#xff0c;多维度、动态、多租户定制化配置多种数据源&#xff0c;此篇我们进行SpringBoot集成mybatis分包配置多数据源&#xff0c;这是比较通用的配置方式&#xff0c;大家也容易理解&#xff0c;废话少说我们进入正题&#xff…...

NVIDIA 7th SkyHackathon(八)使用 Flask 与 Vue 开发 Web

1.页面效果 Web 采用 flaskvue 开发&#xff0c;效果图如下 2.后端 import sys import subprocess import os from PIL import Image from datetime import datetime from ASR_metrics import utils as metricsfrom werkzeug.wrappers import Request, Response from …...