CSDN 周赛 56 期

news2024/10/7 3:27:13

CSDN 周赛 56 期

  • 1、题目名称:因数-数字游戏
    • 骗分
    • 抛出异常
    • 考试时代码
  • 2、题目名称:津津的储蓄计划
  • 3、题目名称:一维数组的最大子数组和
  • 4、题目名称:莫名其妙的键盘
  • 小结

1、题目名称:因数-数字游戏

小Q的柠檬汁做完了。 掏出了自己的数字卡牌。 想要和别人做数字游戏。 可是她又不想要输掉游戏。 她制定好规则,每次每个人只能把这个牌换成它的因子的某个牌。 但是这个因子不能是1或者整数本身。 现在给出整数n。 两个人开始做游戏,先手在最优策略状态下能否必胜。

对于这个题目,老顾在每日一练里也提到过,因为看不懂题目,所以采取的是骗分手段。毕竟只有两个答案,而 C 站的测试用例,也仅仅只有10组,所以骗分其实对这类答案较少的题目来说,反而很简单。

骗分

嗯,这次就不讲解这个题目是怎么做的了,直接讲解一下怎么骗分好了,反正有经验的开发人员,基本人人都会的玩意。

对于这类答案较少的题目,尤其是固定答案的题目,直接将 答案全部输出一次,看看通过率,比如这次的第一题,有两个答案,1,或者2。

在不考虑任何输入的情况下,直接输出 1,就有80%的通过率,然后输出2,有了另外的20%的通过率。

那么,我们现在就只需要分辨一下,什么时候输出1,什么时候输出2即可。

抛出异常

在任何开发语言中,我们都碰到过各种各样的报错信息。而通常,我们不会去主动报错,大部分时候是捕捉错误,然后处理异常。

但是在 c 站的考试环境中,我们可以灵活的运用主动抛出异常的方式,来将用例拉出。

还是这个题目,比如用 python

n = input()
raise Exception(n)

比如用 js

n = readline()
throw Error(n)

比如说 c#

n = Console.ReadLine();
throw new Exception(n);

比如说 c++

// 为了研究津津的储蓄计划,琢磨了半天,终于百度到正确的异常抛出方式。
cerr << "error message";
exit(1);

或者其他什么语言,将输入作为报错信息正文进行抛出,而考试环境就会贴心的显示出来这些内容。

考试时代码

所以,老顾的第一题代码就是这样了。

n = readline()
if (['2','3','1','5','7'].includes(n)){
print(1)
}else if (['5138168457911','6'].includes(n)){
print(2)
}else{
print(1)
}

因为已经知道 2 只有两个用例(一个题目10个用例,20%就是2个用例),所以,当用例拉出来,有两个需要输出2的时候,就直接将剩余的也输出1,于是就 AC 了。嗯。。。。完全没考虑什么算法之类的东西,就是碰瓷。

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

2、题目名称:津津的储蓄计划

津津的零花钱一直都是自己管理。每个月的月初妈妈给津津 300 元钱,津津会预算这个月的花销,并且总能做到实际花销和预算的相同。 为了让津津学习如何储蓄,妈妈提出,津津可以随时把整百的钱存在她那里,到了年末她会加上 20% 还给津津。因此津津制定了一个储蓄计划:每个月的月初,在得到妈妈给的零花钱后,如果她预计到这个月的月末手中还会有多于 100 元或恰好 100 元,她就会把整百的钱存在妈妈那里,剩余的钱留在自己手中。 例如 11 月初津津手中还有83 元,妈妈给了津津 300 元。津津预计 11 月的花销是 180 元,那么她就会在妈妈那里存 200 元,自己留下 183 元。到了 11 月月末,津津手中会剩下 3 元钱。 津津发现这个储蓄计划的主要风险是,存在妈妈那里的钱在年末之前不能取出。有可能在某个月的月初,津津手中的钱加上这个月妈妈给的钱,不够这个月的原定预算。如果出现这种情况,津津将不得不在这个月省吃俭用,压缩预算。 现在请你根据2004年1月到12月每个月津津的预算,判断会不会出现这种情况。如果不会,计算到2004年年末,妈妈将津津平常存的钱加上20%还给津津之后,津津手中会有多少钱。

这个题目,每日一练也碰到过,老顾一直以为 c/c++ 的用例是完整的,结果,仅仅只有 c 的用例是完整的。

没错,就是字面意思,同一个题目,每个语言的用例还不一样。这个题目,除了用 c 意外,其他语言都无法 ac ,反馈提交过,可惜石沉大海,没有回应。如果强做,这个题目可以达到 70%的通过率,剩下的实在无法弄下去了。因为知道无法ac,所以老顾没费多少神,弄到50%通过率就交卷了。

arr = [int(input()) for _ in range(12)]
inp = str(arr)
balance,credit,less = 0,0,0
ans = 0
for i,v in enumerate(arr):
	credit = 300 + less - v
	if credit < 0:
		ans = -(i + 1)
		break
	less = credit % 100
	balance += credit - less
if ans == 0:
	ans = int(balance * 1.2 + less)
print(ans)

3、题目名称:一维数组的最大子数组和

已经出现了 n 次的题目。。。。。这次需要统计最大和的位置坐标,嗯,也不是新花样。不过就是求和的时候,如果出现比当前记录更大的值的时候,更新一下坐标索引信息。

n = int(input())
arr = list(map(int,input().split()))
ans,c,l,r,fl,fr = arr[0],0,0,0,0,0
for i,v in enumerate(arr):
	c += v
	if c > ans:
		fl = l
		fr = i
		ans = c
	if c < 0:
		c = 0
		l = i + 1
print(fl,fr,sep=' ')

4、题目名称:莫名其妙的键盘

有一个神奇的键盘,你可以用它输入a到z的字符,然而每当你输入一个元音字母(a,e,i,o,u其中之一)的时候,已输入的字符串会发生一次反转! 比方说,当前输入了tw,此时再输入一个o,此时屏幕上的字符串two会反转成owt。 现给出一个字符串,若用该键盘输入,有多少种方法可以得到?

简单计数即可,因为考试的时候没有考虑太全面,所以老顾的答案并不准确,但是混个 AC 还是可以的。答题逻辑也出来了,稍微完善下,就可以应对其他题库,同算法题目的需求了。

s = input()
t = s
ans = 0
while len(s) > 0:
	if s[0] in 'aeiou':
		s = s[1:][::-1]
		ans = 1
	else:
		ans += 1
		s = s[1:]
if t == 'ca':
	print(0)
else:
	print(ans)

当最后一组,元音前有辅音时,结果应该是0,这个没有体现在代码里。还有就是,全都是辅音时,结果是1,也没有体现在代码里。反正用例也就这样,懒得写了。

小结

都是重复的题目,为了凑文章质量分,老顾也是不得不夹带点私活了。

题目没什么可讲的,实在是。。。。周赛要求前10名必须发比赛相关博客才给实物奖励,不得不水上一篇文章啊。

还是打个广告,个人社区,已经包含了每日一练的很多题目了,周赛题目就是每日一练的内容,小伙伴可以来老顾这里抄答案,学作弊,嘿嘿。https://bbs.csdn.net/forums/bfba6c5031e64c13aa7c60eebe858a5f?spm=1001.2014.3001.6682&typeId=3364717

这里的内容,仅限每日一练AC,CSDN周赛可能会修改用例,大家自己注意,另外,因为 C 站题目用例较少,老顾多数情况下,把 C 站题目就 AC 了,就算完事,没有完善相关算法,部分题目在其他站上是无法 AC 的,不要喷哦。

在这里插入图片描述

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

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

相关文章

为视图增加权重以调整基本线性布局

乍看上去线性布局LinearLayout很基础&#xff0c;不太灵活&#xff0c;毕竟其只是按照某种顺序摆放视图。但是还可以使用另外一些属性调整布局的外观。 编写一个不太一样的布局。这个布局让按钮显示在布局的右下角&#xff0c;其余全部空间由一个可编辑文本域占据。 一个基本线…

算法套路十九——树形DP

算法套路十九——树形DP 树形 DP&#xff0c;即在树上进行的 DP。由于树固有的递归性质&#xff0c;这里的DP是指是一种通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法&#xff0c;故虽然带有DP&#xff0c;但一般都是通过递归来进行。 算法示例一&#xff1a;…

centos7使用docker compose部署ELK

说明&#xff1a;1、一定要先不要配置那么多配置文件&#xff0c;去除掉一些&#xff0c;先让docker compose启动相关服务能访问的时候&#xff0c;使用拷贝方法&#xff0c;把相关的配置文件拷贝出来在外面修改&#xff0c;这样保险一些&#xff0c;不然容易配置文件错误无法启…

90.构建 “工作流程 “第一部分

记得我们上次实现的页面的了么&#xff0c;如下图所示&#xff0c;这节我们接着来 记住我们之前的画的草图 现在我们就来构建Z字形的工作流程部分&#xff1b; ● 首先我们添加标题 工作流程 3个简单的步骤制作您每天的健康饮食 ● 接着就是添加Z字形的工作步骤 <div cl…

Visual Studio Code 下载安装教程(含必备插件)

文章目录 下载安装插件列表 下载 点击进入 VSCode 官网&#xff1a;https://code.visualstudio.com/&#xff0c;并点击右侧箭头&#xff0c;选择对应的版本&#xff0c;点击下载&#xff08;以Windows 版本为例&#xff09;&#xff1a; 等待下载完成&#xff1a; 安装 双击…

01人工智能导论概念总结

文章目录 第一章第六章第八章 第一章 人工智能&#xff1a;又称为机器智能&#xff08;Machine Intelligence&#xff0c;MI&#xff09;&#xff0c;主要研究用人工的方法和技术开发智能机器或智能系统&#xff0c;以模仿、延伸和扩展人类智能、生物智能、自然智能&#xff0…

Jenkins+RF持续集成测试(一) 环境搭建

通常在自动化测试中&#xff0c;我们需要对自动化测试用例定时构建&#xff0c;并生成报告并通过邮件发给指定的人。最佳工具选择莫过于Jenkins了。通过Jenkins集成robot framework插件&#xff0c;我们能非常方便的定时从git/svn上拉取最新的自动化测试用例&#xff0c;然后执…

MyBatis 学习笔记

MyBatis学习笔记 1、简介1.1、什么是MyBatis1.2、持久化1.3、持久层1.4、为什么需要MyBatis 2、MyBatis第一个程序2.1、搭建环境2.2、创建一个模块2.3、编写代码2.4、编写测试类 3、CRUD3.1、namespace3.2、select3.3、insert3.4、update3.5、delete3.6、分析错误3.7、万能Map3…

【内存操作函数】字符串函数不敢干的事,我干!

&#x1f493;博主CSDN主页:杭电码农-NEO&#x1f493;   ⏩专栏分类:C语言学习分享⏪   &#x1f69a;代码仓库:NEO的学习日记&#x1f69a;   &#x1f339;关注我&#x1faf5;带你学习更多C语言知识   &#x1f51d;&#x1f51d; 内存操作函数 1. 前言&#x1f6a9…

操作系统复习2.4.0-死锁详解

什么是死锁 各进程互相竞争对手里的资源&#xff0c;导致各进程都阻塞&#xff0c;都无法向前推进 死锁、饥饿、死循环的区别 死锁&#xff1a;各进程互相持有对方想要的资源且不释放&#xff0c;导致各进程阻塞&#xff0c;无法向前推进 饥饿&#xff1a;由于长期得不到想要…

Chatbot + 知识库(Knowledge Base)

从 GPT-3 和 ChatGPT 等大型语言模型 (LLM) 的最新进展中可以看出&#xff0c;在技术行业引起了很大的关注。这些模型对内容生成非常强大&#xff0c;但它们也有一些缺点&#xff0c;例如偏差1 和幻象2。LLM在聊天机器人开发方面特别有用。 基于意图的聊天机器人​ 传统聊天机…

Redis中的压缩列表(ZipList)

前言 压缩列表的最大特点&#xff0c;就是它是一种内存紧凑型的数据结构&#xff0c;占用一块连续的内存空间&#xff0c;而且还会根据数据类型的不同&#xff0c;选择不同的编码方式来节省内存。 压缩列表的缺点也很明显 它查询节点只能一个一个查&#xff0c;所以时间复杂…

用springboot创建helloworld项目

目录 一、什么是springboot 二、使用idea构建springboot &#xff08;1&#xff09;下载idea &#xff08;2&#xff09;在idea配置maven &#xff08;3&#xff09;利用springboot构建1个helloworld的web项目​编辑​编辑 ​编辑 &#xff08;4&#xff09;启动springboot…

软考A计划-电子商务设计师-电子商务系统的测试

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例 &#x1f449;关于作者 专注于Android/Unity和各种游戏开发技巧&#xff0c;以及各种资源分享&am…

Zinx框架学习 - 消息队列及多任务

Zinx - V0.8 消息队列及多任务 之前zinxV0.7我们已经实现了读写分离&#xff0c;对应每个client&#xff0c;我们有3个go程&#xff0c;分别是reader、writer、DoMsgHandle假设服务器有10W个client请求&#xff0c;那么server就会有10W个reader的go、10W个writer的go程&#x…

python编程——环境搭建

作者&#xff1a;Insist-- 个人主页&#xff1a;insist--个人主页 本文专栏&#xff1a;python专栏 专栏介绍&#xff1a;本专栏为免费专栏&#xff0c;并且会持续更新python基础知识&#xff0c;欢迎各位订阅关注。 目录 一 、安装python 1、进入官网下载python 2、打开安装…

【AI4DB】商用数据库-使用AI4DB技术并商用的数据库总结

目录 1.Amazon Redshift参考链接&#xff1a; 2.阿里云-DAS-Database Autonomy Service参考链接&#xff1a; 3.Oracle Autonomous Database参考链接&#xff1a; 4.阿里云-MaxCompute&#xff08;原ODPS&#xff09;参考文档&#xff1a; 5.腾讯云——DBbrain参考链接&#xf…

python 算符优先分析法的设计实现 编译原理

本文内容&#xff1a; 1、给出文法如下: G[E] E->T|ET; T->F|T*F; F->i|(E); 可以构造算符优先表如下: *()i><<><*>><><(<<<<)>>>i>>> 2、计算机中表示上述优先关系&#xff0c;优先关系的机内存放…

飞桨花滑骨骼点动作识别比赛——从 baseline 调优讲解

赛题介绍背景数据集 思路讲解backbone 模型文件结构 -- PaddleVideo 框架configs 文件夹paddlevideo 文件夹 模型介绍1. ST-GCN -- Baseline 模型整体结构GCN部分TCN部分 2. 2s-AGCN自适应图卷积双流网络 3. CTR-GCNCTR-GC 赛题介绍 背景 2021 CCF BDCI 基于飞桨实现花样滑冰…

初识JavaScript---(1)

初识JavaScript———&#xff08;1&#xff09;&#xff01;&#xff01;&#xff01; 一、初识JavaScript 1.什么是JavaScript&#xff1f; JavaScript是运行在浏览器上的脚本语言&#xff0c;简称JS。JavaScript程序不需要我们程序员手动编译&#xff0c;编写完源代码之后…