CCF真题练习:202209-1如此编码

题目背景

某次测验后,顿顿老师在黑板上留下了一串数字 23333 便飘然而去。凝望着这个神秘数字,小 P 同学不禁陷入了沉思……

题目描述

已知某次测验包含 n 道单项选择题,其中第 i 题(1≤i≤n)有 个选项,正确选项为 ,满足。比如说,=4 表示第 i 题有 4 个选项,此时正确选项  的取值一定是 0、1、2、3 其中之一。

顿顿老师设计了如下方式对正确答案进行编码,使得仅用一个整数 m 便可表示 

首先定义一个辅助数组 ,表示数组  的前缀乘积。当 1≤i≤n 时,满足:

特别地,定义 c0=1。

于是 m 便可按照如下公式算出:

 

易知,,最小值和最大值分别当  全部为 0 和 =−1 时取得 

试帮助小 P 同学,把测验的正确答案  从顿顿老师留下的神秘整数 m 中恢复出来。

输入格式

从标准输入读入数据。

输入共两行。

第一行包含用空格分隔的两个整数 n 和 m,分别表示题目数量和顿顿老师的神秘数字。

第二行包含用空格分隔的 n 个整数,依次表示每道选择题的选项数目。

 

#include<iostream>
#include<vector>
using namespace std;
int main() 
{long long int n,m;cin>>n>>m;vector<long long int>a(n+1,0);vector<long long int>ans(n,0);for(int i=1;i<=n;i++){cin>>a[i];}if(m==0){for(int i=0;i<n;i++){cout<<0<<" ";}}	else{vector<long long int>c(n+1,0);c[0]=1;for(int i=1;i<=n;i++){c[i]=c[i-1]*a[i];}	    for(int i=0;i<n;i++){if(i==0){ans[i]=(m%c[1])/c[0];}	    	else{ans[i]=(m%c[i+1]-m%c[i])/c[i];}}for(int i=0;i<n;i++){cout<<ans[i]<<" ";}}	return 0;
}

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

了解交换机接口的链路类型(access、trunk、hybrid)

上一个章节中讲到了vlan的作用及使用&#xff0c;这篇了解一下交换机接口的链路类型和什么情况下使用 vlan在数据包中是如何体现的&#xff0c;在上一篇的时候提到测试了一下&#xff0c;从PC1去访问PC4的时候&#xff0c;只从E0/0/2发送给了E0/0/3这是&#xff0c;因为两个接…

gogs的自定义配置

在 GOGS 下载并安装后&#xff0c;在程序目录下建立一个custom/conf/app.ini的配置文件&#xff0c;内容如下&#xff1a; APP_NAME Gogs # APP名字 RUN_USER git # 启动用户&#xff0c;设置后只能以此账号启动gogs RUN_MODE prod[database] DB_TYPE mysql HOST 1…

PHP特性之CTF中常见的PHP绕过

目录 一、关于md5()和sha1()的常见绕过 1、使用数组绕过 2、 使用特殊字符串绕过 二、strcmp绕过 三、switch绕过 四、intval绕过 一、关于md5()和sha1()的常见绕过 知识介绍&#xff1a; 1、对于php强比较和弱比较&#xff1a;md5()&#xff0c;sha1()函数无法处理数组…

使用3DS Max 创建未来派螺栓枪模型

推荐&#xff1a; NSDT场景编辑器助你快速搭建可二次开发的3D应用场景 步骤 1 创建一个框并将其转换为可编辑多边形&#xff08;右键单击>转换为&#xff1a;>转换为可编辑多边形&#xff09;&#xff0c;然后使用连接添加一系列边循环&#xff0c;如下图所示。 步骤 2 …

基于JavaSpringBoot+Vue+uniapp微信小程序实现鲜花商城购物系统

博主介绍&#xff1a;✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专…

⚡【C语言趣味教程】(3) 浮点类型:单精度浮点数 | 双精度浮点型 | IEEE754 标准 | 介绍雷神之锤 III 源码中的平方根倒数速算法 | 浮点数类型的表达方式

&#x1f517; 《C语言趣味教程》&#x1f448; 猛戳订阅&#xff01;&#xff01;&#xff01; ​—— 热门专栏《维生素C语言》的重制版 —— &#x1f4ad; 写在前面&#xff1a;这是一套 C 语言趣味教学专栏&#xff0c;目前正在火热连载中&#xff0c;欢迎猛戳订阅&#…

文件IO_文件截断_ftruncate,truncate(附Linux-5.15.10内核源码分析)

目录 1.为什么需要文件截断&#xff1f; 2.truncate函数介绍 2.1 truncate函数 2.2 truncate函数内核源码分析 2.3 truncate函数使用示例 3.ftruncate函数介绍 3.1 ftruncate函数 3.2 ftruncate函数内核源码分析 3.3 ftruncate函数使用示例 3.4 ftruncate和文件偏移量…

进程间通信之共享内存

共享内存 1.共享内存的概念2.共享内存函数2.1 shmget函数2.2 shmat函数2.3 shmdt函数2.4 shmctl函数 3. 共享内存的使用 1.进程间通信的分类&#xff1a; &#xff08;1&#xff09;管道&#xff1a;1、匿名管道pipe;2、命名管道mkfifo &#xff08;2&#xff09;System V IPC&…

跨境电商中的安全利器与效率助推器

在如今全球互联网时代&#xff0c;跨境电商已成为全球贸易的重要组成部分。然而&#xff0c;对于从事跨境电商的企业和个人而言&#xff0c;面对诸多网络隐私与安全风险&#xff0c;如何确保在线操作的安全性和高效性成为了摆在他们面前的重要课题。本文将向您介绍隐擎Fox指纹浏…

从Spring 应用上下文获取 Bean

ApplicationContext 提供了获取所有已经成功注入 Spring IoC 容器的 Bean 名称的方法 getBeanDefinitionNames() 。然后我们可以借助于其 getBean(String name) 方法使用 Bean 名称获取特定的 Bean。 我们使用 CommandLineRunner 接口来打印一下结果。 1.1 获取所有的 Bean im…

手机APP智能硬件开发,蓝牙设备如何测试?

一、APP扫描设备 1、手机端蓝牙不同设置下是否能正常扫描&#xff1a;蓝牙打开、蓝牙关闭&#xff1b; 2、蓝牙设备被扫描到并出现在可连接设备列表的条件&#xff1a; 蓝牙设备名称与可连接的设备列表中的名称匹配、设备处于广播状态&#xff1b; 蓝牙设备与可连接的设备列…

【前端技巧】CSS常用知识碎片(九)

CSS常用知识碎片&#xff08;九&#xff09; mask-image属性 带有半透明的PNG图像的遮罩效果 .mask-image {mask: no-repeat center / contain;mask-image: url(bird.png); }SVG图形遮罩效果 .mask-image {mask-image: url("data:image/svgxml,%3Csvg viewBox0 0 3232…

mysql 字符 1024个字符限制 cast转为varchar 不限制字符长度 最大字符长度 group_concat长度限制

设置group_concat的最大长度然后再运行 SET SESSION group_concat_max_len102400;

【算法基础:数据结构】2.2 字典树/前缀树 Trie

文章目录 知识点cpp结构体模板 模板例题835. Trie字符串统计❤️❤️❤️❤️❤️&#xff08;重要&#xff01;模板&#xff01;&#xff09;143. 最大异或对&#x1f62d;&#x1f62d;&#x1f62d;&#x1f62d;&#x1f62d;&#xff08;Trie树的应用&#xff09; 相关题目…

C# MVC 多图片上传预览

一.效果图&#xff1a; 开发框架&#xff1a;MVC&#xff0c;Layui 列表主界面这里就不展示了&#xff0c;可以去看看这篇文章&#xff1a;Layui项目实战&#xff0c;这里讲的是“上传Banner”界面功能&#xff1a; 其中包括&#xff0c;多文件上传&#xff0c;预览&#xff0c…

vue进阶-消息的订阅与发布

&#x1f4d6;vue基础学习-组件 介绍了嵌套组件间父子组件通过 props 属性进行传参。子组件传递数据给父组件通过 $emit() 返回自定义事件&#xff0c;父组件调用自定义事件接收子组件返回参数。 &#x1f4d6;vue进阶-vue-route 介绍了路由组件传参&#xff0c;两种方式&…

【conan】本地编译三方库,上传conan服务器

1.6 conan 远程已经编译好的库 conan中文博客&#xff1a; 三方库资源&#xff1a; github conan-io 本地查询 conan search Existing package recipes:b2/4.9.6 boost/1.71.0nolovr/stable bzip2/1.0.8 ceres-solver/2.0.0nolovr/stable eigen/3.3.7nolovr/stable eigen_c…

【软件测试】selenium中元素的定位

1.元素的定位 不管用那种方式&#xff0c;必须保证页面上该属性的唯一性 1.CSS 定位 CSS(Cascading Style Sheets)是一种语言&#xff0c;它被用来描述HTML 和XML 文档的表现。 CSS 使用选择器来为页面元素绑定属性。这些选择器可以被selenium 用作另外的定位策略CSS的获取可…

Go 工具链详解(三): 代码测试神器 go test

go test 作用 go test 是 Go 工具链中的一个命令&#xff0c;用于编译和运行按照要求编写的 Golang 测试代码&#xff0c;并生成测试报告。 要求将测试代码所在的文件命名为 *_test.go&#xff0c;如此命名的文件不会被 go build 命令编译&#xff0c;但是会被 go test 进行编…

C++基础算法前缀和和差分篇

&#x1f4df;作者主页&#xff1a;慢热的陕西人 &#x1f334;专栏链接&#xff1a;C算法 &#x1f4e3;欢迎各位大佬&#x1f44d;点赞&#x1f525;关注&#x1f693;收藏&#xff0c;&#x1f349;留言 主要讲解了前缀和和差分算法 文章目录 Ⅳ. 前缀和 和 差分Ⅵ .Ⅰ前缀和…