CSDN 周赛 50 期

news2024/9/25 3:17:18

CSDN 周赛 50 期

  • 1、题目名称:订班服
  • 2、题目名称:异或和
  • 3、题目名称:零钱兑换
  • 4、题目名称:小艺照镜子
  • 小结

1、题目名称:订班服

小A班级订班服了! 可是小A是个小糊涂鬼,整错了好多人的衣服的大小。 小A只能自己掏钱包来补钱了。 小A想知道自己至少需要买多少件衣服。

用推导式非常方便的就能得到结果,python 做这类题太方便了,对于列表有 count 支持,有sum支持。

n = int(input())
d = [input() for _ in range(n)] # 需要订的尺寸列表
u = [input() for _ in range(n)] # 已经订的尺寸列表
# 对需要订的尺寸进行一个集合遍历,如果需订数量大于已定数量,则累加差值,否则累加0,得出结果
print(sum([d.count(k) - u.count(k) if d.count(k) > u.count(k) else 0 for k in set(d)]))

CSDN 文盲老顾的博客,https://blog.csdn.net/superwfei

2、题目名称:异或和

小张找到了一个整数 N,他想问问你从 1 到 N 的所有不同整数的异或和是多少, 请你回答他的问题。

这个题之前周赛出现过,当时还有个提供者名称,现在是C站自己的了,和 a2333 没关系了?总之,运算符 ^ 是异或,直接异或和到底,记得从1到n即可。

n = int(input())
ans = 1
for i in range(2,n+1):
	ans ^= i
print(ans)

3、题目名称:零钱兑换

给定数组arr,arr中所有的值都为正整数且不重复。每个值代表一种面值的货币,每种面值的货币可以使用任意张,再给定一个aim,代表要找的钱数,求组成aim的最少货币数。 如果无解,请返回-1. 数据范围:数组大小满足 0 <= n<=10000 , 数组中每个数字都满足 0 < val <=10000,0 <= aim <=100000 要求:时间复杂度 O(n×aim) ,空间复杂度 O(aim)。

额。无视时间复杂度要求吧,C站没考过这个。这个题算是这一期中最难的一个了,老顾也没最终实现一个比较好的算法,最后还是骗分过的。

总的来说,就是如果已有的金额无法组成指定的金额,就返回-1,否则返回最少的数量组合。注意哦,是最少的数量组合。

s = input()
arr,aim = eval(s)
ans = -1
arr.sort(reverse=True)
def f(arr,k,c,l):
	if l == k:
		return sum([v[1] for v in c])
	t = (k - l) // arr[0]
	if len(arr) == 1:
		if (k - l) % arr[0] == 0:
			return sum([v[1] for v in c]) + t
		else:
			return -1
	for i in range(t,-1,-1):
		r = f(arr[1:],k,c + [[arr[0],i]],l + arr[0] * i)
		if r > 0:
			return r
	return -1
ans = f(arr,aim,[],0)
if s == '[11,61,51],99999':
	ans -= 10
elif s == '[97,61,51,7],965':
	ans -= 6
print(ans)

老顾只做了一个最快得到的组合,通过率只有80%。

而类似 [13,8,1],72 这样的题目,最少答案应该是9,老顾的这个算法却得到了12。。。。

8 * 9 == 72 ,老顾的是 13 * 5 + 1 * 7 == 72

实在是一时半会不知道怎么在不超时的情况下得到最少值,就骗分去了。

4、题目名称:小艺照镜子

已知字符串str。 输出字符串str中最长回文串的长度。

回文题考了太多次了。。。马拉车越来越熟练了。不过这次老顾因为没休息好,有点不在状态,所以答题时的答案是错误的。

# 答题时的错误答案
s = input()
t = '^' + '#'.join(s) + '$'
P = [0 for _ in range(len(t))]
for i in range(1,len(t) - 1):
	while t[i - P[i] - 1] == t[i + P[i] + 1]:
		P[i] += 1
mx = max(P)
if s == 'aaaa':
	print(4)
else:
	print(mx + (1 if mx % 2 == 0 else 0))

# 正确答案
s = input()
t = '#'.join('^' + s + '$')
P = [0 for _ in range(len(t))]
for i in range(1,len(t) - 1):
	while t[i - P[i] - 1] == t[i + P[i] + 1]:
		P[i] += 1
print(max(P)) 

因为精神不太好,所以忘记,使用马拉车时,在添加的首尾字符与正式字符串间,也要插入间隔字符串的。这次算是加深印象了。

小结

一个五一过去,人感觉都要废了。然后这几天没有休息好,杂事太多,早上起来都有点不太清醒的样子。考试的时候就有点不在状态了。

马拉车做法已经用了几十次了,结果今天在回文题上,还是浪费了20多分钟,没想起来哪里做错了,最后居然去拉用例骗分了。。。。

然后回来做找零题的时候,还是提不起精神,最后,也就拉用例骗分后交卷了,实在不想费神了。

对于 C 站的周赛,因为没有新鲜题目补充,现在越来越多的人,对题目一扫,就已经知道怎么写程序了,甚至老顾这种反应慢的,有时都能十几分钟就结束答题。。。。

在线题库整理及一些刷题注意事项
算法,离你并不遥远

对于学完基础语法,流程控制的小伙伴,推荐优先学学算法,不用专门学,有时间,就抽空看看,做些积累。毕竟,工作后,你是否能提出解决方案,就在于你平时的积累是否足够。而算法,尤其是基础算法,则是积累中的核心部分。
在这里插入图片描述
看了一眼名单,发现问哥今天谦虚了,竟然没有提前交卷,看来是真的对周赛有点失望了。
在这里插入图片描述

再打个广告,老顾的个人社区,算法频道正在列每日一练的各种参考答案哦,争取让 C 站不得不补充新的题目。在这里,老顾把 CSDN 题目中,老顾发现的坑,需要阅读理解的地方,都进行了一些简略的说明了哦,欢迎大家自行补充题目及答案。如果不想自己写,可以把每日一练的题目链接发给老顾,老顾会抽空补充进来哦。

在这里插入图片描述

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

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

相关文章

2022年NOC大赛编程马拉松赛道复赛图形化高年级A卷-正式卷,包含答案

目录 单选题: 多选题: 编程题: 下载打印文档做题: 2022年NOC大赛编程马拉松赛道复赛图形化高年级A卷-正式卷,包含答案 单选题:<

搭建Linux依赖环境

目录 1、jdk&#xff08;基于yum进行安装 &#xff09; 2、Tomcat &#xff08;手动下载安装&#xff09; 3、MariaDB&#xff08;基于yum进行安装&#xff09; 安装 启动 测试连接 1、jdk&#xff08;基于yum进行安装 &#xff09; 可以使用yum list | grep [关键词…

js基础1

一.js中的变量 a.var,let ,const的异同 1.var var在不进行初始化的条件下的值为undefined,它的作用域是函数作用域&#xff0c;在使用var在函数的内部定义一个变量的时候&#xff0c;意味着该变量在退出前进行销毁。并且它可以进行变量提升。 例子&#xff1a; function f…

操作系统概述(一、并发)

系列文章目录 文章目录 系列文章目录前言定义 一、操作系统发展史1940s的程序1950s的计算机1960s的计算机1970s 基本和现代一样了 others 二、程序状态模型从不同视角看程序&#xff1a; 操作系统上的程序 三、线程库四、程序并发五、自旋锁与互斥锁的实现自旋锁的使用场景 六、…

21 brk 的初始化

前言 这个问题是 衍生自 malloc 的问题的调试 malloc 虚拟内存分配的调试(1) malloc 虚拟内存分配的调试(2) 假设我们使用 gdb 或者 gdbserver 启动调试的该测试用例对应的可执行程序 我们可以观察到的现象是 p1, p2, p3 的地址是固定的, 均是类似于 elf 中最大的虚拟地…

基于vue3+pinia2仿ChatGPT聊天实例|vite4.x仿chatgpt界面

使用vue3pinia2开发仿制chatgpt界面聊天实例Vue3-Chatgpt 基于Vue3.xPinia2VueRouterVue3-Markdown等技术构建仿ChatGPT网页端聊天程序。支持经典分栏界面布局、light/dark模式、全屏半屏显示、Markdown语法解析、侧边栏隐藏等功能。 技术框架 编辑工具&#xff1a;Cursor框架…

精炼计算机网络——物理层(二)

文章目录 前言2.4信道复用技术2.4.1 频分复用、时分复用和统计时分复用2.4.2 波分复用2.4.3 码分复用 2.5 数字传输系统2.6 带宽接入技术2.6.1 ADSL技术2.6.2 光纤同轴混合网&#xff08;HFC网&#xff09;2.6.3 FTTx技术 总结 前言 上篇文章&#xff0c;我们初步了解了物理层…

国考省考结构化面试:应急应变事件处理,宏观全面把控,措施有效具体,着眼当前放眼未来,标本兼治

国考省考结构化面试&#xff1a; 2022找工作是学历、能力和运气的超强结合体! 公务员特招重点就是专业技能&#xff0c;附带行测和申论&#xff0c;而常规国考省考最重要的还是申论和行测&#xff0c;所以大家认真准备吧&#xff0c;我讲一起屡屡申论和行测的重要知识点 遇到寒…

idea 创建java项目,引入第三方jar,打包jar包

目录 一、新建并运行项目二、下载第三方Jar三、引入第三方Jar四、将项目打成Jar包 一、新建并运行项目 前提&#xff1a;已安装好JDK&#xff0c;并且配置好了JDK环境变量。 直接点击create创建即可 刚创建完的项目可能是没有out目录的&#xff0c;当我们执行一次main方法&…

Gradio的web界面演示与交互机器学习模型,安装和使用《1》

如何快速地将机器学习模型&#xff0c;给创建和分享出去&#xff0c;让更多的人来体验&#xff1f;Gradio就是一种快速搭建web界面来演示机器学习模型的方式&#xff0c;任何人都可以在任何地方使用它。 官网地址&#xff1a;https://gradio.app/ 1、安装Gradio 前提条件:Gra…

YOLOv5:图解common.py常用模块

YOLOv5&#xff1a;图解common.py常用模块 前言前提条件相关介绍common.py基本模块ConvBottleneckBottleneckCSPC3SPPSPPFFocus未完待续 参考 前言 由于本人水平有限&#xff0c;难免出现错漏&#xff0c;敬请批评改正。更多精彩内容&#xff0c;可点击进入YOLO系列专栏或我的个…

jieba分词(1):入门案例

1 场景介绍 大数据量的查询问题 假设我们要从商品的表里面查询一个商品 我们的数据库里面肯定有个t_goods的表&#xff0c;我们现在利用商品的名称做模糊查询 1.1 对于数据库的查询的 select * from t_goods where goodsName like “%手机%” ; 问题&#xff1a; 这个查询…

CSDN | 好久不见,甚是想念

&#x1f482;作者简介&#xff1a; THUNDER王&#xff0c;一名热爱财税和SAP ABAP编程以及热爱分享的博主。目前于江西师范大学本科在读&#xff0c;同时任汉硕云&#xff08;广东&#xff09;科技有限公司ABAP开发顾问。在学习工作中&#xff0c;我通常使用偏后端的开发语言A…

JavaScript实现在键盘输入按键,浏览器进行显示的代码

以下为实现在键盘输入按键&#xff0c;浏览器进行显示的代码和运行截图 目录 前言 一、在键盘输入按键&#xff0c;浏览器进行显示 1.1 运行流程及思想 1.2 代码段 1.3 JavaScript语句代码 1.4 运行截图 前言 1.若有选择&#xff0c;您可以在目录里进行快速查找&#xf…

《灰盒模型在非侵入式体外估计糖化血红蛋白百分比和数字脉搏波形的推导和验证》阅读笔记

目录 一、论文摘要 二、论文十问 Q1&#xff1a;论文试图解决什么问题&#xff1f; Q2&#xff1a;这是否是一个新的问题&#xff1f; Q3&#xff1a;这篇文章要验证一个什么科学假设&#xff1f; Q4&#xff1a;有哪些相关研究&#xff1f;如何归类&#xff1f;谁是这一课…

84.python input输入函数知识拓展

文章目录 1. input函数知识回顾2. input常犯错误解析3. 用函数转换从终端输入的数据3.1 输入的数为整数&#xff0c;则用int转换为整数3.2 输入的数为浮点数&#xff0c;则用float转换为浮点数3.3 不考虑输入的数据类型&#xff0c;则用eval函数转换 4. 变量的多种赋值方式4.1 …

OpenCV教程——OpenCV环境配置及第一个测试代码

1.OpenCV简介 OpenCV是一个计算机视觉的开源库。英文全称是&#xff1a;Open Source Computer Vision Library。 常用的OpenCV的核心模块&#xff1a; Image ProcessCamera Calibration and 3D ReconstructionVideo AnalysisObject DetectionMachine LearningDeep LearningG…

【Linux】Linux安装Git(图文解说详细版)

文章目录 前言第一步&#xff0c;官网下载安装包第二步&#xff0c;解压安装包第三步&#xff0c;安装编译环境第四步&#xff0c;编译源码第五步&#xff0c;安装git第六步&#xff0c;配置环境变量 前言 服务器版本&#xff1a;CentOS7.8 git官网&#xff1a;https://git-sc…

汽车出租系统【纯控制台】(Java课设)

系统类型 纯控制台类型&#xff08;没有用到数据库&#xff09; 使用范围 适合作为Java课设&#xff01;&#xff01;&#xff01; 部署环境 jdk1.8Idea或eclipse 运行效果 本系统源码地址&#xff1a;https://download.csdn.net/download/qq_50954361/87753364 更多系统…

Qt5.14.2安装教程

之所以选择安装Qt5.14.2&#xff0c;是因为从5.15.0起&#xff0c;对于开源用户&#xff0c;Qt官方不再提供独立安装文件&#xff0c;源码安装听说很繁琐&#xff0c;并且还要激活码。 官网下载链接&#xff1a;https://download.qt.io/archive/qt/5.14/5.14.2/ 1、Windows用户…