CSDN周赛第24期——解题报告+吹水

文章介绍了几道编程竞赛题目,包括计算数字x在1~n中出现的次数,构建特定条件的回文串,输出蛇形矩阵,以及解决货物装载问题,避免每辆车装满13个货物。每个问题都提供了题解策略,主要涉及模拟和字符串处理方法。
摘要由CSDN通过智能技术生成

文章目录

写在前面

这次T2卡了我好久,还是菜了。
话说打完比赛后题在哪看啊。
我写的时候题面是直接根据记忆写的。
不过比赛还是很不错的,希望越来越好!

T1

题目大意:给定n,x,求1~n的整数中数字x出现了多少次。
题解:
模拟即可,枚举1~n,分拆数字每一位。

T2

题目大意:给定一个带?号的字符串,使用字母替换?号,要求最后得到的字符串仅使用了前k个字母,且前k个字母都得被使用,是一个回文串,并且字典序最小。无解输出"QAQ"(不带引号)
题解:
首先扫一遍字符串确认原字符串是否只使用了前k个字母,并开桶统计。
然后扫一遍维护i与j的位置,i最初在字符串开头,j最初在字符串结尾。i往后,j往前(下设字符串为s)。
接下来分讨:
1.若s[i]为?,而s[j]不为?,那么s[i] = s[j]
2.若s[j]为?,而s[i]不为?,那么s[j] = s[i]
3.若s[i],s[j]均为?,那么记录。
4.否则跳过
接下来?就是一对一对出现的。
然后我们需要找出最靠里的?对。
从这一对开始往外填,如果还有没用过的字母,那么使用,否则填a
注意代码不要写太复杂。

T3

题目大意:输出n*n的蛇形方阵。
题解:
也是模拟题,直接填就完了。
我的方法是赛时自己推的,感觉有很多大佬的方法跟我一样,好欸!

T4

题目大意:给定n,k,要求把n个货物装到最多能装k个货物的货车上,且每辆货车上不能有恰好13个货物。
题解:
首先当k=13时k-=1
然后模拟装货,注意如果当前某辆车上有12个货物且只剩一个货物了,那么要一辆新车。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值