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

26.卷1的答案

1.已知2010年小明·的生日在8月28日——周六 ,从2011到2020,有几次生日在周末?

做法:一个一个算下去,注意,平年365天,闰年366天,一共2次。

2.前序:ABDGKEHCFIJ,中序:GKDBHEACLFJ,问:后序?

做法:首先必须搞清楚前序、中序与后序的遍历方法。

NO.1 树(tree)-CSDN博客

然后,拿一张纸,画出这棵树,最终得出结论:KGDHEBLJFCA。

3.把10个西瓜(一模一样 )装在4个一模一样的袋子中(也就是7111与1117算同一种),不能为空,问有几种?

做法:一个一个算下去,一共有7111,6211,5311,5221,4411,4321,3322,2224...9种!!!

4.某进制数:347 r=3213 4,则r=?

做法:用进制转换器试一试,结果是8。

5.switch语句中case语句必须在default语句之前。()

做法:平时积累可知,case不一定在default之前。

6.链表的特点有什么?

做法:平时积累可知,链表插入删除不用移动元素。

7.如果对4 2 8 3 5 7 1 6进行冒泡排序,会发生几次交换?

做法:签到题,13种。(等等,我没错......)

8.T(n)=T(n-1)+n,T(1)=1,时间复杂度为?

做法:

  1. 首先,通过递推式T(n)=T(n−1)+n,T(1)=1来展开T(n):
    • 当n=2时,T(2)=T(1)+2。
    • 当n=3时,T(3)=T(2)+3=T(1)+2+3。
    • 当n=4时,T(4)=T(3)+4=T(1)+2+3+4。
    • 以此类推,当n=n时,T(n)=T(1)+2+3+⋯+n。
  2. 然后,由于T(1)=1,所以T(n)=1+2+3+⋯+n。
    • 根据等差数列求和公式Sn​=2n(n+1)​,这里T(n)=2n(n+1)​。
  3. 最后,分析时间复杂度:
    • T(n)=2n(n+1)​=21​n2+21​n。
    • 根据时间复杂度的定义,在计算时间复杂度时,只考虑最高次项,所以T(n)的时间复杂度为O(n2)。

综上,该算法的时间复杂度为O(n2)。

9.x&~(1<<n)可以将x的第n位设置为1吗?

做法:考查位运算,答案:nonononono。

10.一棵n层的满二叉树,总结点的数量和叶子节点数量之差是几?

做法:平时积累可知,答案:2^n-1-2^(n-1)。

11.代码题
#include<bits/stdc++.h>
using namespace std;//一个标准的递归代码
int f(int a,int b)
{if(a==b){return 1;}else if(a<b){return f(a+1,b)+1;}else{return f(a,b*2)+1;}} 
int main()
{int a,b;cin>>a>>b;cout<<f(a,b);return 0;
}

输入2 8,经过递归计算,得数为7。

#include<bits/stdc++.h>
#include<cmath>
using namespace std;
unsigned long long k,len;
int n;
bool flag; 
int main()
{cin>>n>>k;len=pow(2,n-1);while(len){if(!flag){if(k<len) cout<<"0";else if(k>=len){cout<<"1";k-=len;flag=true;}}else if(flag){if(k<len){cout<<"1";flag=false;}else if(k>=len){cout<<"0";k-=len;}}len>>=1;}return 0;
}

1.将第15行和第24行,k-=len改为1<<(n-1),程序运行不变。

解析:len为2的整数次幕,所以k在二进制下与len做异或其实就是将最高位设置为0,相当于减len。

2.输出结果110110111,问k=?

解析:递推即可,最低位为1,在1位编码中是第2个。

第2位为1,在2位编码中应该是2+(2-2+1)=3个。

第3位为1,在3位编码中应该是4+(4-3+1)=6个。

第4位为0,在4位编码中应该是6个。

第5位为1,在5位编码中应该是16+(16-6+1)=27个。

第6位为1,在6位编码中应该是32+(32-27+1)=38个。

第7位为0,在7位编码中应该是38个。

第8位为1,在8位编码中应该是128+(128-38+1)=219个。

第9位为1,在9位编码中应该是256+(256-219+1)=294个。

故k=293。

#include<bits/stdc++.h>
#include<cmath>
using namespace std;
int main()
{int n,k;cin>>n>>k;vector<int> cnt(31,0),a(n);for(int i=0;i<n;++i){cin>>a[i];for(int j=30;j>=0;--j){if(a[i]&(1<<j)) ++cnt[i];if(need<=k){k-=need;ans+=(1<<i);}}}cout<<ans<<"\n";return 0;
}

1.输入4 4 3 1 3 1。输出的数据为?

解析:对3 1 3 1做4次操作,可以把这4个数字中最高位第30位变为1,即(1<<30)+(3&1)=1073741825

2.输入1 30 0。输出的数据为?

解析:对0这一个数字,从最高位开始赋值为1,经过30次操作,也就是(01111111 11111111 11111111 11111110),即2的31次方-1-1

#include<bits/stdc++.h>
#include<cmath>
using namespace std;//本题主要考察贪心思想
int a[1000005],b[1000005];
int cnta[1000005]={1e9},cntb[1000005]={1e9};
int nowa[1000005],nowb[1000005];
int main()
{int n,m,x,now=0;scanf("%d%d%d",&n,&m,&x);for(int i=0;i<n;i++){scanf("%d",&a[i]);if(!i||a[i]==a[i-1]){now++;}else cnta[now]++,now=1;}cnta[now]++;now=0;for(int i=0;i<m;i++){scanf("%d",&b[i]);if(!i||b[i]==b[i-1]){now++;}else cntb[now]++,now=1;}cntb[now]++;int ans=0,nowans=0,pa=n,pb=m;for(int i=0;i<x;i++){while(nowa[pa]==cnta[pa]) pa--;nowa[pa]++;nowans+=pa;}ans=nowans;for(int i=1;i<=x;i++){while(!nowa[pa]) pa++;nowa[pa]--; nowans-=pa;while(nowb[pb]==cntb[pb]) pb--;nowb[pb]++;nowans+=pb;ans=max(ans,nowans);}printf("%d\n",ans);return 0;
}

1.输入:

3 5 1
1 1 1
2 2 2 2 2

则输出?

解析:经过桶排序计算,cnta[3]=1,表示出现3次的数字有1个,cnt[5]=1,表示出现5次的数字有1个。X=1,也就是说要选一个数字能够覆盖更多的数字,因此选择2,可以覆盖5个数字。

2.对于任意合法输入,ans 最大可达到?

解析:根据数据范围可知,x最多可选n+m个,即2*10的6次方个。

#include<bits/stdc++.h>
#include<cmath>
using namespace std;
string a,b;
int c1[26],c2[26],ans=INT_MAX;
int main()
{cin>>a>>b;int n=a.size(),m=b.size();for(int i=0;i<n;i++) c1[a[i]-'a']++;//填空1for(int i=0;i<m;i++) c2[b[i]-'a']++;for(int i=0;i<26&&ans!=0;i++){int ca=n-c1[i],cb=m-c2[i];ans=n=min(ans,ca+cb);//填空2if(i==0) continue;//填空3int r1=0,r2=0;for(int j=i;j<26;j++) r1+=c1[j];for(int j=0;j<i;j++) r1+=c2[j];for(int j=0;j<i;j++) r2+=c1[j];for(int j=i;j<26;j++) r2+=c2[j];//填空4ans=min(ans,min(r1,r2));//填空5}cout<<ans;return 0;
}

相关文章:

26.卷1的答案

1.已知2010年小明的生日在8月28日——周六 &#xff0c;从2011到2020&#xff0c;有几次生日在周末&#xff1f; 做法&#xff1a;一个一个算下去,注意&#xff0c;平年365天&#xff0c;闰年366天&#xff0c;一共2次。 2.前序&#xff1a;ABDGKEHCFIJ&#xff0c;中序&…...

0087.springboot325基于Java的企业OA管理系统的设计与实现+论文

一、系统说明 基于springbootvue的企业OA管理系统,系统功能齐全, 代码简洁易懂&#xff0c;适合小白学编程。 传统办法管理信息首先需要花费的时间比较多&#xff0c;其次数据出错率比较高&#xff0c;而且对错误的数据进行更改也比较困难&#xff0c;最后&#xff0c;检索数…...

Spring Boot 3 整合 MinIO 实现分布式文件存储

引言 文件存储已成为一个做任何应用都不可回避的需求。传统的单机文件存储方案在面对大规模数据和高并发访问时往往力不从心&#xff0c;而分布式文件存储系统则提供了更好的解决方案。本篇文章我将基于Spring Boot 3 为大家讲解如何基于MinIO来实现分布式文件存储。 分布式存…...

Redis|集群 Cluster

文章目录 是什么能干嘛集群算法-分片-槽位slotredis集群的槽位slotredis集群的分片分片槽位的优势slot槽位映射——业界的3种解决方案小厂&#xff1a;哈希取余分区中厂&#xff1a;一致性哈希算法分区大厂&#xff1a;哈希槽分区 面试题&#xff1a;为什么 Redis 集群的最大槽…...

【定制开发】碰一碰发视频系统定制开发,支持OEM

在短视频营销爆发的2025年&#xff0c;"碰一碰发视频"技术已成为实体商家引流标配。某连锁餐饮品牌通过定制化开发&#xff0c;单月视频发布量突破10万条&#xff0c;获客成本降低80%&#xff01;本文将深入解析该系统的技术架构与开发要点&#xff0c;助你快速搭建高…...

【redis】布隆过滤器的Java实现

在Java中&#xff0c;要实现布隆过滤器&#xff08;Bloom Filter&#xff09;的方式有很多种&#xff0c;除了上一节中通过jedis包调用安装了布隆过滤器的redis外&#xff0c;还有以下几种常见的实现方式&#xff1a; 手写布隆过滤器 基于guava包实现 通过redis的bitmaps实现…...

【JAVA架构师成长之路】【电商系统实战】第12集:秒杀系统性能优化实战(CAN + Nginx + Sentinel)

30分钟课程&#xff1a;秒杀系统性能优化实战&#xff08;CDN Nginx Sentinel&#xff09; 课程目标 掌握静态资源 CDN 加速的配置与优化策略。通过 Nginx 实现负载均衡&#xff0c;提升系统横向扩展能力。使用 Sentinel 实现服务降级&#xff0c;保障核心链路稳定性。 课程…...

MySQL安装过程,创建数据库

window操作系统安装 存在两种安装方式&#xff1a; 1.安装包方式 2.压缩包方式 安装包方式 下载安装包 官网下载对应的安装包&#xff0c;根据需要下载对应的版本即可&#xff1a; 8.0&#xff1a;https://cdn.mysql.com//Downloads/MySQLInstaller/mysql-installer-comm…...

Linux上位机开发(开篇)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 传统的上位机开发&#xff0c;一般都是默认pc软件开发。既然是pc软件&#xff0c;一般来说都是基于windows平台开发。开放的框架&#xff0c;无非是…...

算法005——有效三角形个数

力扣——有效三角形个数点击链接跳转 判断三条边是否能组成三角形&#xff0c;大家第一时间想到的就是两边之和大于第三边 但是运用这个方法&#xff0c;我们需要判断三次&#xff0c;有一个更简单的方法&#xff0c;只需要判断一次 因为 C 已经是三边之中最大的了&#xff…...

Ubuntu 下 nginx-1.24.0 源码分析 - ngx_cycle_modules

声明在 src/core/ngx_module.h ngx_int_t ngx_cycle_modules(ngx_cycle_t *cycle);实现在 src/core/ngx_module.c ngx_int_t ngx_cycle_modules(ngx_cycle_t *cycle) {/** create a list of modules to be used for this cycle,* copy static modules to it*/cycle->modul…...

大彩串口屏开发 —— MODBUS通信

目 录 Modbus通信方式 1 使用变量与协议设置方式 2 使用LUA脚本方式 3 两者结合 Modbus通信 大彩串口屏可以采用三种方式实现与其它设备进行modbus通信和逻辑处理。 方式 1 使用变量与协议设置 步骤1 在协议设置里进行设置&#xff0c;包括开启modbus协议&#xff0c;屏做为主…...

React-异步队列执行方法useSyncQueue

1. 完整代码 import React, { useEffect, useRef } from react; import { useDebounceFn } from "ahooks"; // 队列任务类型 interface QueueTask {id: number | string;execute: () > PromiseLike<any>; } // 异步队列执行方法 function useSyncQueue(par…...

【STM32】江科大STM32学习笔记汇总(已完结)

00. 目录 文章目录 00. 目录01. STM32学习笔记汇总02. 相关资料下载03. 打赏04. 附录 01. STM32学习笔记汇总 【STM32】STM32学习笔记-课程简介(01) 【STM32】STM32学习笔记-STM32简介(02) 【STM32】STM32学习笔记-软件安装(03) 【STM32】STM32学习笔记-新建工程(04) 【ST…...

【Python编程】高性能Python Web服务部署架构解析

一、FastAPI 与 Uvicorn/Gunicorn 的协同 1. 开发环境&#xff1a;Uvicorn 直接驱动 作用&#xff1a;Uvicorn 作为 ASGI 服务器&#xff0c;原生支持 FastAPI 的异步特性&#xff0c;提供热重载&#xff08;--reload&#xff09;和高效异步请求处理。 启动命令&#xff1a; u…...

OSPF的各种LSA类型,多区域及特殊区域

一、OSPF的LSA类型 OSPF&#xff08;开放最短路径优先&#xff09;协议使用多种LSA&#xff08;链路状态通告&#xff09;类型来交换网络拓扑信息。以下是主要LSA类型的详细分类及其作用&#xff1a; 1. Type 1 LSA&#xff08;路由器LSA&#xff09; 生成者&#xff1a;每个…...

CentOS 9 系统安装 Docker

CentOS 9 系统安装 Docker 容器化技术如 Docker 已成为提升应用部署效率和管理便捷性的关键利器。你是否曾在使用 Docker 时遭遇安装繁琐、配置复杂的困扰&#xff1f;或者对如何在 CentOS 9 系统上标准化安装 Docker 充满好奇&#xff1f;今天&#xff0c;就让我们一同深入探索…...

pyqt联合designer的运用和设置

PyQt Designer 简介 PyQt Designer 是一个用于创建和设计 PyQt 应用程序用户界面的可视化工具。它允许用户通过拖放方式添加和排列各种控件,如按钮、文本框、滑块等,并设置它们的属性和样式,从而快速构建出美观且功能完整的 UI 界面。 Windows版本:【免费】安装包别管啊啊…...

Linux(Centos 7.6)命令详解:zip

1.命令作用 打包和压缩(存档)文件(package and compress (archive) files)&#xff1b;该程序用于打包一组文件进行分发&#xff1b;存档文件&#xff1b;通过临时压缩未使用的文件或目录来节省磁盘空间&#xff1b;且压缩文件可以在Linux、Windows 和 macOS中轻松提取。 2.命…...

vulnhub靶场之【digitalworld.local系列】的snakeoil靶机

前言 靶机&#xff1a;digitalworld.local-snakeoil&#xff0c;IP地址为192.168.10.11 攻击&#xff1a;kali&#xff0c;IP地址为192.168.10.6 kali采用VMware虚拟机&#xff0c;靶机选择使用VMware打开文件&#xff0c;都选择桥接网络 这里官方给的有两种方式&#xff0…...

FPGA时序约束的几种方法

一,时钟约束 时钟约束是最基本的一个约束,因为FPGA工具是不知道你要跑多高的频率的,你必要要告诉工具你要跑的时钟频率。时钟约束也就是经常看到的Fmax,因为Fmax是针对“最差劲路径”,也就是说,如果该“最差劲路径”得到好成绩,那些不是最差劲的路径的成绩当然比…...

ClusterIP、Headless Service 和 NodePort 的比较

1. ClusterIP 1.1 定义 ClusterIP 是 Kubernetes 默认的 Service 类型&#xff0c;它会为 Service 分配一个虚拟的 IP 地址&#xff08;ClusterIP&#xff09;&#xff0c;这个 IP 是集群内部的虚拟地址&#xff0c;仅在集群内部有效。 1.2 工作原理 虚拟 IP&#xff1a;Clu…...

Ubuntu切换lowlatency内核

文章目录 一. 前言二. 开发环境三. 具体操作 一. 前言 低延迟内核&#xff08;Lowlatency Kernel&#xff09; 旨在为需要低延迟响应的应用程序设计的内核版本。Linux-lowlatency特别适合音频处理、实时计算、游戏和其他需要及时响应的实时任务。其主要特点是优化了中断处理、调…...

介绍一下Qt中的事件过滤

在 Qt 中&#xff0c;事件过滤&#xff08;Event Filter&#xff09;是一种强大的机制&#xff0c;它允许一个对象拦截并处理另一个对象接收到的事件。通过事件过滤&#xff0c;可以在事件到达目标对象之前对其进行监控和修改&#xff0c;这在很多场景下都非常有用&#xff0c;…...

C++修炼之路:初识C++

Hello大家好&#xff01;很高兴我们又见面啦&#xff01;给生活添点passion&#xff0c;开始今天的编程之路&#xff01; 我的博客&#xff1a;<但凡. 我的专栏&#xff1a;《编程之路》、《数据结构与算法之美》、《题海拾贝》 欢迎点赞&#xff0c;关注&#xff01; 引言 …...

微信小程序+SpringBoot的单词学习小程序平台(程序+论文+讲解+安装+修改+售后)

感兴趣的可以先收藏起来&#xff0c;还有大家在毕设选题&#xff0c;项目以及论文编写等相关问题都可以给我留言咨询&#xff0c;我会一一回复&#xff0c;希望帮助更多的人。 系统背景 &#xff08;一&#xff09;社会需求背景 在全球化的大背景下&#xff0c;英语作为国际…...

快乐数 力扣202

一、题目 编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」 定义为&#xff1a; 对于一个正整数&#xff0c;每一次将该数替换为它每个位置上的数字的平方和。然后重复这个过程直到这个数变为 1&#xff0c;也可能是 无限循环 但始终变不到 1。如果这个过程 结果为 1&…...

VBA 数据库同一表的当前行与其他行的主键重复判断实现方案1

目的&#xff0c;判断是否主键重复&#xff0c;不重复则登录新数据&#xff0c;重复则不登录。 定义类型&#xff1a; DataRecord   tableName 表名   rowNumber 行号   columnName 列名   data 数据 想要实现的代码逻辑如下&#xff1a; 模拟数据库的登录过程。假设…...

Java基础面试题全集

1. Java语言基础 1.1 Java是什么&#xff1f; • Java是一种广泛使用的编程语言&#xff0c;最初由Sun Microsystems&#xff08;现为Oracle公司的一部分&#xff09;于1995年发布。它是一种面向对象的、基于类的、通用型的编程语言&#xff0c;旨在让应用程序“编写一次&…...

3.激活函数:神经网络中的非线性驱动器——大模型开发深度学习理论基础

激活函数在神经网络中扮演着至关重要的角色&#xff0c;它为模型引入非线性因素&#xff0c;使得网络能够拟合复杂的数据分布&#xff0c;从而实现高效的特征提取与预测。本文将从实际开发角度出发&#xff0c;介绍激活函数的基本概念、常见激活函数&#xff08;如 ReLU、GELU、…...