信息学奥赛初赛天天练-40-CSP-J2021基础题-组合数学-缩倍法、平均分组、2进制转10进制、面向过程/面向对象语言应用

PDF文档公众号回复关键字:20240630
在这里插入图片描述

2021 CSP-J 选择题

单项选择题(共15题,每题2分,共计30分:每题有且仅有一个正确选项)

1.以下不属于面向对象程序设计语言是( )

A. C++

B. Python

C. Java

D. C

2.以下奖项与计算机领域相关的是( )

A. 奥斯卡奖

B. 图灵奖

C. 诺贝尔奖

D. 普利策奖

3.目前主流的计算机存储数据最终都是转换成( ) 数据进行存储的

A. 二进制

B. 十进制

C. 八进制

D. 十六进制

7.二进制数101.11对应的十进制数是( )

A. 6.5

B. 5.5

C. 5.75

D. 5.25

10.有6个人,两个人组一对,总共组成三队,不区分队伍的编号。不同的组队情况有( )

A. 10

B. 15

C. 30

D. 20

2 相关知识点

1) 2进制转10进制

按权展开,但要注意各个位的权,最低位(最右边)的权是0次方,权值为1

向左为2^1, 2^2, 2^3, 2^4, 2^5…

(11010110)2=1×2^7+1×2^6+0×2^5+1×2^4+0×2^3+1×2^2+1×2^1+0×2^0=(214)10

向右,小数部分,2^(-1), 2^(-2), 2^(-3), 2^(-4), 2^(-5)…

(1011.01)2=(1*2^3+1*2^1+1*2^0+1*2^(-2))=8+2+1+0.25=11.25

2) 面向过程/面向对象

面向过程和面向对象是两种不同的编程范式

面向过程:面向过程的编程方式强调的是算法和逻辑,关注的是解决问题的步骤。在这种范式下,程序员需要设计一系列按顺序执行的指令,以实现特定的功能

面向对象:面向对象的编程方式强调的是数据和数据结构,关注的是问题的抽象和建模。在这种范式下,程序员需要定义一系列相互作用的对象,这些对象共同构成了问题的解决方案

面向对象的代码具有较高的复用性和可维护性。通过继承和多态等机制,可以方便地创建新的对象类,实现功能的扩展和复用

早起的语言,像c语言,Pascal,Fortran等都是面向过程的语言

后来的语言,像C++,Jave,Python等都是面向对象语言

3) 组合数学-缩倍法、平均分组

缩倍法

在排列问题中限制某几个元素必须保持一定的顺序,可用缩小倍数的方法.此法也被叫消序法.

将n个不同元素排列成一排,其中某k个元素的顺序保持一定,有多少种不同排法?

n个不同元素排列成一排,共有A(n,n) 种排法,k个不同元素排列成一排共有A(k,k) 种不同排法,于

是,k个不同元素顺序一定的排法只占排列总数的A(k,k)分之一,所以总的排列数为A(n,n)/A(k,k)

例题

A,B,C,D,E五人并排站成一排,如果B必须站在A的右边(A,B可以不相邻)那么不同的排法有多少种?

分析

B 在A的右边与B在A的左边排法数相同,所以题设的排法只是5个元素全排列数的一半

A(5,5)/A(2,2)=5 * 4 * 3 * 2 * 1/2=60种

平均分组

是指将所有的元素分成所有组元素个数相等或部分组元素个数相等,即m个不同的元素平均分成n个组,有多少种分组方法

由于是平均分组,分组选择元素时会出现重复,因此结果需要除以A(n,n)

例题1

有4个人,平均分为2组,即每组2人,共有多少种分组方法?

答案 3 种

分析

第1步

从4个人中选2人,放入第1组 C(4,2) = 4 * 3 / 2 =6

第2步

从剩余2人中选2人,放入第2组 C(2,2)=1

第3步

平均分成2组,除以A(2,2)=2

所以分组方法数为 6 * 1 /2 = 3 种

除以A(2,2)的原因:

我们可以枚举C(4,2):从4人中选2人的情况,假如这4人分别为 甲、乙、丙、丁,可以看出1,6和2,5和3,4选的人是相同的,平均分组没有区别,所以需要除以A(2,2)

同样的道理,平均分成3组是需要除以A(3,3)

3 思路分析

1.以下不属于面向对象程序设计语言是( D )

A. C++

B. Python

C. Java

D. C

分析

C++是一种通用编程语言,它扩展了C语言,增加了面向对象的特性,如类、对象、继承、多态等

Python是一种解释型、面向对象、动态数据类型的高级程序设计语言,它支持多种编程范式,包括面向对象编程

Java是一种面向对象的编程语言,它具有跨平台性、安全性、稳定性和可靠性等特点

C语言是一种过程式编程语言,它主要关注程序的执行过程,而不是数据和操作数据的函数。C语言不具备面向对象的特性,如类和对象

2.以下奖项与计算机领域相关的是( B )

A. 奥斯卡奖

B. 图灵奖

C. 诺贝尔奖

D. 普利策奖

分析

奥斯卡奖,是电影相关奖项

奥斯卡奖正式名称为美国电影艺术与科学学院奖(Academy Awards),是由美国电影艺术与科学学院主办的电影类奖项,创办于1929年。它是美国历史最为悠久、最具权威性和专业性的电影类奖项,也是全世界最具影响力的电影类奖项之一

图灵奖,计算机领域奖项

图灵奖是由美国计算机协会(ACM)颁发的年度奖项,旨在表彰在计算机科学领域具有持久和重大技术重要性贡献的个人。该奖项以英国数学家、逻辑学家艾伦·图灵的名字命名,他是计算机科学和人工智能的先驱,被誉为“计算机之父”

诺贝尔奖,物理、化学,医学等

诺贝尔奖是根据瑞典化学家阿尔弗雷德·诺贝尔的遗嘱于1901年设立并开始每年颁发的奖项,旨在表彰在物理学、化学、和平、生理学或医学、文学、经济学领域“对人类作出最大贡献”的科学家

普利策奖,是新闻界奖

普利策奖,正式名称为普利策新闻奖,是根据美国报业巨头约瑟夫·普利策的遗愿于1917年设立的奖项,被誉为“新闻界的诺贝尔奖”。普利策奖是美国新闻界的一项最高荣誉奖,其影响力历久不衰

3.目前主流的计算机存储数据最终都是转换成( A ) 数据进行存储的

A. 二进制

B. 十进制

C. 八进制

D. 十六进制

分析

二进制,是计算技术中广泛采用的一种数制。计算方法:二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”。

当前的计算机系统使用的基本上是二进制系统,数据在计算机中主要是以补码的形式存储的。计算机中的二进制则是一个非常微小的开关,用“开”来表示1,“关”来表示0。

7.二进制数101.11对应的十进制数是( C )

A. 6.5

B. 5.5

C. 5.75

D. 5.25

分析

(101.11)2
=1*2^2 + 0*2^1 + 1 *2^0 + 1*2^(-1)+1*2^(-2)
=4+0+1+0.5+0.25
=5.75

10.有6个人,两个人组一对,总共组成三队,不区分队伍的编号。不同的组队情况有( B )

A. 10

B. 15

C. 30

D. 20

分析

6个人2人一组,分成3组,人数相同,不区分不同对应编号,即每个队伍相同,不区分先后次序,是平均分组问题
C(6,2)*C(4,2)*C(2,2)/A(3,3)
=6*5/2 * 4*3/2 *2*1/2/(3 *2 * 1)
=15 * 6 * 1/(3 *2 * 1)
=90/6=15

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

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

相关文章

R包的4种安装方式及常见问题解决方法

R包的4种安装方式及常见问题解决方法 R包的四种安装方式1. install.packages()2. 从Bioconductor安装3. 从本地源码安装4. 从github安装 常见问题的解决1. 版本问题2. 网络/镜像问题3.缺少Rtools R包的四种安装方式 1. install.packages() 对于R自带的包的安装一般都可以通过…

HarmonyOS--路由管理--组件导航 (Navigation)

文档中心 什么是组件导航 (Navigation) ? 1、Navigation是路由容器组件,一般作为首页的根容器,包括单栏(Stack)、分栏(Split)和自适应(Auto)三种显示模式 2、Navigation组件适用于模块内和跨模块的路由切换,一次开发&#xff0…

实现点击按钮导出页面pdf

在Vue 3 Vite项目中,你可以使用html2canvas和jspdf库来实现将页面某部分导出为PDF文档的功能。以下是一个简单的实现方式: 1.安装html2canvas和jspdf: pnpm install html2canvas jspdf 2.在Vue组件中使用这些库来实现导出功能:…

网线直连电脑可以上网,网线连tplink路由器上不了网

家里wifi网络连不上好几天了,用网线直连电脑可以上网,但网线连tplink路由器wan口上不了网,无Internet连接,网线连lan口可以电脑上网,手机上不了。 后来发现网线的主路由用的192.168.0.1,我的路由器wan口自…

在node环境使用MySQL

什么是Sequelize? Sequelize是一个基于Promise的NodeJS ORM模块 什么是ORM? ORM(Object-Relational-Mapping)是对象关系映射 对象关系映射可以把JS中的类和对象,和数据库中的表和数据进行关系映射。映射之后我们就可以直接通过类和对象来操作数据表和数据了, 就…

【大数据导论】大数据序言

各位大佬好 ,这里是阿川的博客,祝您变得更强 个人主页:在线OJ的阿川 大佬的支持和鼓励,将是我成长路上最大的动力 阿川水平有限,如有错误,欢迎大佬指正 目录 数据概念及类型及可用及组织形式数据概念数据…

golang项目基于gorm框架从postgre数据库迁移到达梦数据库的实践

一、安装达梦数据库 1、登录达梦数据库官网,下载对应系统版本的安装包。 2、下载地址为:https://www.dameng.com/list_103.html 3、达梦数据库对大小写敏感,在安装初始化数据库实例时建议忽略大小写;具体安装教程可参考以下博客: …

python办公自动化之pandas

用到的库:pandas 实现效果:创建一张空白的表同时往里面插入准备好的数据 代码: import pandas # 准备好要写入的数据,字典格式 data{日期:[7.2,7.3],产品型号:[ca,ce],成交量:[500,600]} dfpandas.DataFrame(data) # 把数据写入…

Java代码基础算法练习-计算被 3 或 5 整除数之和-2024.06.29

任务描述: 计算 1 到 n 之间能够被 3 或者 5 整除的数之和。 解决思路: 输入的数字为 for 循环总次数,每次循环就以当前的 i 进行 3、5 的取余操作,都成立计入总数sum中,循环结束,输出 sum 的值 代码示例&…

QT加载安装外围依赖库的翻译文件后翻译失败的现象分析:依赖库以饿汉式的形式暴露单例接口导致该现象的产生

1、前提说明 QtClassLibaryDll是动态库,QtWidgetsApplication4是应用程序。 首先明确:动态库以饿汉式的形式进行单例接口暴露; 然后,应用程序加载动态库的翻译文件并进行全局安装; // ...QTranslator* trans = new QTranslator();//qDebug() << trans->load(&quo…

大模型系列:提示词管理

既然大模型应用的编程范式是面向提示词的编程&#xff0c;需要建立一个全面且结构化的提示词库&#xff0c; 对提示词进行持续优化也是必不可少的&#xff0c;那么如何在大模型应用中更好的管理提示词呢&#xff1f; 1. 提示词回顾 提示词在本质上是向大型语言模型&#xff08…

​Chrome插件:React Developer Tools为React开发调试而生

React Developer Tools 是什么? 它是允许在Chrome和Firefox开发者工具中检查React组件层次结构的扩展插件。 插件源码下载 源码下载地址:GitHub - facebook/react-devtools at v3 下载完成以后执行红框中的代码,下载react-devtools 源码,源码如下图所示: 插件打包 当前n…

【C++】 ——【模板初阶】——基础详解

目录 1. 泛型编程 1.1 泛型编程的概念 1.2 泛型编程的历史与发展 1.3 泛型编程的优势 1.4 泛型编程的挑战 2. 函数模板 2.1 函数模板概念 2.2 函数模板格式 2.3 函数模板的原理 2.4 函数模板的实例化 2.5 模板参数的匹配原则 2.6 函数模板的特化 2.7 函数模板的使…

Linux CentOS 宝塔中禁用php8.2的eval函数详细图文教程

PHP_diseval_extension 这个方法是支持PHP8的, Suhosin禁用eval函数&#xff0c;不支持PHP8 一、安装 cd / git clone https://github.com/mk-j/PHP_diseval_extension.gitcd /PHP_diseval_extension/source/www/server/php/82/bin/phpize ./configure --with-php-config/ww…

美团校招机试 - 小美的平衡矩阵(20240309-T1)

题目来源 美团校招笔试真题_小美的平衡矩阵 题目描述 小美拿到了一个 n * n 的矩阵&#xff0c;其中每个元素是 0 或者 1。 小美认为一个矩形区域是完美的&#xff0c;当且仅当该区域内 0 的数量恰好等于 1 的数量。 现在&#xff0c;小美希望你回答有多少个 i * i 的完美…

C++操作系列(二):VSCode安装和配置C++开发环境

1. VSCode下载 进入VSCode的官网网页&#xff1a;Download Visual Studio Code - Mac, Linux, Windows 下载相应的版本&#xff1a; 2. 安装VSCode 安装到指定位置&#xff1a; 一路下一步&#xff0c;直至安装完成&#xff1a; 3. 安装C插件 3.1. 安装C/C 点击扩展图标&…

linux上git的使用

目录 1.测试是否安装有git 2.下载项目到本地 3.三板斧 1.将代码放在创建的目录中 2.提交改动到本地 3.提交代码到远端 4.注意点 以及补充内容 1.测试是否安装有git 如果输入git --help 会显示下面一大串那么就是已经安装&#xff0c;否则需要自行手动安装 yum install g…

Elasticsearch开启认证|为ES设置账号密码|ES账号密码设置|ES单机开启认证|ES集群开启认证

文章目录 前言单节点模式开启认证生成节点证书修改ES配置文件为内置账号添加密码Kibana修改配置验证 ES集群开启认证验证 前言 ES安装完成并运行&#xff0c;默认情况下是允许任何用户访问的&#xff0c;这样并不安全&#xff0c;可以为ES开启认证&#xff0c;设置账号密码。 …

【Python从入门到进阶】59、Pandas库中Series对象的操作(二)

接上篇《58、Pandas库中Series对象的操作(一)》 上一篇我们讲解了Pandas库中Series对象的基本概念、对象创建和操作&#xff0c;本篇我们来继续学习Series对象的运算、函数应用、时间序列操作&#xff0c;以及Series的案例实践。 一、Series对象的运算 1. 数值型数据的算术运…

ElasticSearch索引架构与存储

关于ES官网的介绍: Elasticsearch provides near real-time search and analytics for all types of data. Whether you have structured or unstructured text, numerical data, or geospatial data, Elasticsearch can efficiently store and index it in a way that support…