外号🙄🙄🙄🙄🙄
2026-06-19 17:05:56
发布于:浙江
天天被叫外号烦死了
王小天 王王 宁宁
气死人了
你们有外号吗
全部评论 3
夏水道 肚肚鸟等
2天前 来自 北京
0大运,百吨王,乐子大佛……
3天前 来自 浙江
0小添添 也是我的外号
2天前 来自 浙江
0就因为我的名字
2天前 来自 浙江
0
我的外号真的好多
3天前 来自 浙江
0我有10几个
2天前 来自 浙江
0
2026-06-19 17:05:56
发布于:浙江
天天被叫外号烦死了
王小天 王王 宁宁
气死人了
你们有外号吗
夏水道 肚肚鸟等
2天前 来自 北京
大运,百吨王,乐子大佛……
3天前 来自 浙江
小添添 也是我的外号
2天前 来自 浙江
就因为我的名字
2天前 来自 浙江
我的外号真的好多
3天前 来自 浙江
我有10几个
2天前 来自 浙江


互动|真没招了!那些让你当场放弃的瞬间
真没招了!那些让你当场放弃的瞬间👇 Hi,AC狗友们 。有没有那么一刻 ,你对着屏幕 / 书本 / 生活 ,默默说了一句:“算了,真没招了”。 不是摆烂,是真的尽力了 。但结果还是……emmm 🎁交出你的“没招了”瞬间🧾 👉 你最近一次觉得 “真没招了” 是什么时候? 👉 因为什么事?后来怎么解决的(还是没解决)? 评论区直接写👇 例子:“调代码调了俩小时,结果是中文分号,真没招了。” 格式不限,一句话 or 小故事都行~ ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 🎁 福利时间 活动截止后: * 评论点赞前 5 名 → 罐头 × 50: @💩💩百大游戏解说官💩💩,@꧁慕温ᨐ꧂(不加团 新人)LHY,@科技起源,@萧瑶自在,@ * 随机抽 5 人 → 罐头 × 20 :@小金 回关,@AC乔,@人机猫,@永盼,@含双(破谜者暮汐.研梦) ⏰ 即日起 至 2026 年 6月 16 日 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 💬 评论区交出你的 “没招了” 瞬间 往期互动


Code date creation发布
hi,acgo朋友们,我带来最新一款数据生成器Code date creation。 榜2了加油! 预告 下一次,exceed! 为每个人造福! CDCFUTURE发布了! 增加小工具,各种功能集全。 相比较PRO1.0.0兼容好点了图片。 电脑系统不同,有些小工具不能用。 图片可以保存。 手动选择g++会自动保存。 界面美化。 懒人化彻底。 下载FUTURE http://b-bu.cn/b01d70zgla 密码:CDC未来 展示 常规 图片与颜色 图片因为导入不同,一直刷新,所以卡。 提示 只有正式版源码会公开! 开发日志 2026年6月12日 5.0.0发布 2026年6月19日 6.0.0发布 2026年6月20日 pro1.0.0发布 2026年6月21日 future发布 介绍 Code-date-creation 是一款由 CDCluogu 团队研发的新一代 C++ 图形化数据生成器。该工具可以帮助用户在洛谷网站、acgo网站等平台上生成测试数据。 该工具包含一个安装包,用户可以将其安装在计算机上。安装完成后,用户可以通过运行主体exe文件来使用它。 Code-date-creation 的主要功能是为 C++ 编程者提供一个方便的工具,用于生成各种类型的测试数据。这些数据可以用于测试和验证 C++ 程序的功能和性能。 该工具的使用非常简单。首先,用户需要将 Code-date-creation 安装到计算机上。然后,通过运行主程序,用户可以选择要生成的数据类型,如数组、字符串、函数等。接下来,用户可以根据需要进行配置,例如设置数据的范围、长度等。最后,用户点击“生成”按钮,即可生成所需的测试数据。 总之,Code-date-creation 是一个功能强大且易于使用的 C++ 静态数据生成器,可以帮助用户轻松生成各种类型的测试数据。又CDCluogu研发出的,新一代C++静态数据生成器,包含安装包,已经主体exe,帮助你在洛谷网站或acgo网站等生成测试数据,cpp已公开。 此介绍摘自此网站 功能介绍 可帮助你快速编译数据,支持随机数据和自编译模式,界面图形化。 只要你有AC代码就能造! 快速帮助新手上手。 6.0.0新功能 在此次生产数据中,可自动打包zip 由于自编译不同,只会加入一组测试数据,剩下需要自行加入。 我们会在6.1.0修复。 5.0.0新功能 我们支持颜色更改,换一下主题也不错,如果想换回来,可以点默认颜色呢,此软件保留之前颜色。 版权问题 以下是本次工作人员。 starryfast 主策划(编写者兼宣传) 也就是我。 StellarCode bug测试 pjz1061065454 360安全测试 skysunrise_c颜色测试 chfqwq全科测试 我们开发团队仅有这些人,请注意辨别。 市面盗版不要下载,可能中病毒。 本次使用 VSCode 编译,主要为**C++**代码编译。 软件要求 本次软件有安装包,需要您的电脑有 g++。 没有安装包有自带 g++,不过自带 g++ 仅仅支持 C++11。 请确保您的电脑空间充足。 下载 5.0.0下载网站:http://b-bu.cn/b01d70edvg ,密码CDC500 6.0.0下载网站:http://b-bu.cn/b01d70wg6h,密码CDC600 PRO下载网站 ,密码:CDCPRO 代码仓 github:https://github.com/starryfast/Code-date-creation gitcode https://gitcode.com/starryfast/Codedatecreation 招募 现在招一位bug检测和宣传。 有意者联系作者。 QQ:272215275 邮箱:272215275@qq.com 联系同意后加入。 https://www.luogu.com.cn/team/129680 https://gitcode.com/starryfast 详细解说 https://www.bilibili.com/video/BV1jzJp6CEG8/?spm_id_from=888.80997.embed_other.whitelist&bvid=BV1jzJp6CEG8 提醒日志 2026年6月18日19:18:29 目前不适合特别麻烦数据,如果数据过于麻烦,使用自编译模式 2026年6月20日10:08:32 不支持小熊猫 C++ 编译器的 g++ 感谢 感谢支持者 @AC君 亮出你安装的生成器吧

MMOI Round 1 赛后总结帖
感谢各位参加 MMOI Round 1。本场比赛共 156156156 人提交,717171 人有分。 * A 题预期难度为橙,共 444444 人通过,首 A 为 @LEC,获得 100100100 罐头; * B 题预期难度为绿,共 555 人通过,首 A 为 @csy(互关),获得 150150150 罐头; * C 题预期难度为绿,共 272727 人通过,首 A 为 @LEC,获得 200200200 罐头; * D 题预期难度为紫,共 111 人通过,首 A 为 @ask_silently,获得 400400400 罐头。 排除作弊后的前五名为: * 第一名:@ask_silently,获得 122212221222 罐头; * 第二、三名:@申请A级记忆消除、@csy(互关),分别获得 305305305 罐头; * 第四、五名:@zjr、@cjdst,分别获得 101101101 罐头。 题解:https://www.acgo.cn/discuss/study/83409。

MMOI R1 T1-3 题解
难度大概是橙黄黄绿吧。感谢金钩大佬在百忙之中出思维好题给我们。 T1 Difficulty:3- / Easy Tag:- 假设存在一个 xxx 使得满足 pi>n−xp_i\gt n-xpi >n−x 的数量大于 xxx。 注意到是排列,所以不可能。 所以修改显然不优。 所以最优解是不把任何平台修改接收平台,答案就是 pi≤ip_i\le ipi ≤i 的数量。 时间复杂度:O(n+q)O(n+q)O(n+q)。 T2 Difficulty:3.4 / Easy Tag:- 脑电波题。 注意到如果 nnn 是奇数,出现的数只有奇数和 000 可以这么构造: [n,n−2,...,9,7,5,3,1,0,1,3,5,7,9,...,n−2,n][n,n-2,...,9,7,5,3,1,0,1,3,5,7,9,...,n-2,n][n,n−2,...,9,7,5,3,1,0,1,3,5,7,9,...,n−2,n] 偶数同理。 然后注意到把这两块拼出来,中间有三个 000,而最左边和最右边的空的距离恰好是 n+1n+1n+1,刚好能放进 nnn。所以构造如下(这里展示 n=11n=11n=11 的): [9,7,5,3,1,11,1,3,5,7,9,10,8,6,4,2,0,11,2,4,6,8,10][\red{9,7,5,3,1}\green{,11,}\red{1,3,5,7,9}\blue{,10,8,6,4,2},0\green{,11,}\blue{2,4,6,8,10}][9,7,5,3,1,11,1,3,5,7,9,10,8,6,4,2,0,11,2,4,6,8,10] 时间复杂度:O(∑n)O(\sum n)O(∑n)。 T3 Difficulty:3.5 / Easy Tag:隔板法 首先计算长度为 nnn 的方程数。 其实就是求 n+A1+A2+...+An+1=Sn+A_1+A_2+...+A_{n+1}=Sn+A1 +A2 +...+An+1 =S,Ai≥0,An>0A_i\ge 0,A_n\gt 0Ai ≥0,An >0 的整数解数量。容斥一下,分别计算 n+...=Sn+...=Sn+...=S 与 n+...=S−1n+...=S-1n+...=S−1 的非负整数解数量。这里讨论前者。 移一下项,A1+A2+...+An+1=S−nA_1+A_2+...+A_{n+1}=S-nA1 +A2 +...+An+1 =S−n。根据隔板法,答案为 (Sn)S\choose n(nS )。 所以总数为 ∑n=1S(Sn)−∑n=1S(S−1n)=2S−2S−1=2S−1\sum_{n=1}^S {S\choose n}-\sum_{n=1}^S {S-1\choose n}=2^S-2^{S-1}=2^{S-1}∑n=1S (nS )−∑n=1S (nS−1 )=2S−2S−1=2S−1。第二问就是在问满足 ∑n=1m(Sn)−∑n=1m(S−1n)>k\sum_{n=1}^m {S\choose n}-\sum_{n=1}^m {S-1\choose n}\gt k∑n=1m (nS )−∑n=1m (nS−1 )>k 的最小的 mmm。 注意到 (Sn)S\choose n(nS ) 增长极快,当 SSS 较大时,m=2m=2m=2 时原式就已经超过 10910^9109 了。所以组合数怎么实现都行。 我使用了一种十分拟人的 O(mS)O(m\sqrt S)O(mS ) 实现求组合数。能过就是好算法 时间复杂度:O({∅,∅,∅,{∅},{∅,∅,{∅}}}×S)O(\{\varnothing, \varnothing, \varnothing, \{\varnothing\}, \{\varnothing, \varnothing, \{\varnothing\}\}\}\times\sqrt S)O({∅,∅,∅,{∅},{∅,∅,{∅}}}×S )。 T4 不会。


分组背包
怎么上榜三的 万能开头@78鼠鼠 @156****6690@仰天长啸你爹驾到@AC酱 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 溢位


emm……对,就是评论帖主吧
这个……由于帖主突发奇想哈,想看看各位友人对帖主的看法 随便评论和提问,都会回复,接受锐评 (没人的话……) 水致歉

深高北-双指针
双指针思想笔记(C++版) 一句话理解 > 双指针:用两个“箭头”在数组或字符串上移动,解决需要比较、查找、反转等问题。 就像两个人同时在一条路上走,有时一起走,有时面对面走,用他们的位置关系来解决问题。 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 一、什么是双指针? 双指针:使用两个指针(下标)来遍历数据结构,通过移动指针来高效解决问题。 核心思想:利用两个指针的位置关系,减少循环的层数,把 O(n²) 变成 O(n)。 常见类型: * 左右指针:一个在左,一个在右,向中间移动 * 快慢指针:一个走得快,一个走得慢 * 同向指针:两个都从左边开始,一前一后 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 二、左右指针(对撞指针) 题目1:两数之和(洛谷P1102) 题目描述:给定 n 个从小到大排好序的整数和一个目标数 target,请找出两个数,使它们的和等于 target。输出这两个数的下标(从1开始)。题目保证有唯一解。 输入样例: 输出样例: (因为 a[2]=2, a[4]=6,和是8) ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 题目2:回文判断(洛谷P1015) 题目描述:给定一个字符串,判断它是否是回文串(正着读和倒着读一样)。字符串长度不超过1000。 输入样例: 输出样例: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 题目3:盛最多水的容器(洛谷P1652) 题目描述:给定 n 个非负整数 a[1], a[2], ..., a[n],每个数代表坐标中的一个点 (i, a[i])。找出两条线,使得它们与 x 轴构成的容器能容纳最多的水,输出最大面积。 思路:左右指针,每次移动高度较小的那个指针。 输入样例: 输出样例: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 三、快慢指针 题目4:删除有序数组中的重复项(洛谷P1116) 题目描述:给定一个有序数组,删除重复出现的元素,使每个元素只出现一次,返回新数组的长度。不要使用额外数组,必须在原数组上操作。 输入样例: 输出样例: (去重后前4个位置:1 2 3 4) ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 题目5:找出数组的中间位置 题目描述:给定一个数组,找出它的中间位置。如果数组长度是奇数,输出正中间的下标;如果是偶数,输出靠左的那个中间下标。 输入样例1: 输出样例1: 输入样例2: 输出样例2: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 四、同向指针 题目6:移除元素(洛谷P1177) 题目描述:给定一个数组和一个值 val,原地移除所有数值等于 val 的元素,返回新数组的长度。元素的顺序可以改变。 输入样例: 输出样例: (剩余元素:1 3 4 5 6 7 8) ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 题目7:把0移到末尾(洛谷P1111) 题目描述:给定一个数组,把所有的0移到数组的末尾,同时保持非零元素的相对顺序。 输入样例: 输出样例: ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 五、双指针常见题型总结 类型 指针移动方式 经典题目 左右指针 一左一右,向中间移动 两数之和、回文判断、盛水容器 快慢指针 一快一慢,快慢速度不同 数组去重、找中点 同向指针 一前一后,都向右移动 移除元素、移动零 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 六、时间复杂度对比 方法 时间复杂度 空间复杂度 暴力双重循环 O(n²) O(1) 双指针 O(n) O(1) ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 七、易错点 易错点 正确做法 下标从0开始还是从1开始 本笔记统一从1开始 左右指针需要数组有序 两数之和、盛水容器需要有序 循环条件写错 左右指针用 left < right 快慢指针边界 注意 fast + 1 <= n 防止越界 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 八、总结 要点 内容 核心思想 用两个指针减少循环层数 时间复杂度 O(n) 空间复杂度 O(1) 适用场景 数组、字符串相关问题 下标习惯 本笔记统一从1开始 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 记忆口诀 > 双指针,真神奇,两个箭头来回移 > 左右指针向中间,两数和与回文题 > 快慢指针一快慢,去重找中点搞定 > 同向指针一前后,移除元素移零灵 > 暴力循环 n 平方,双指针 n 就搞定 > 下标统一从1起,边界判断要仔细 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


六一互动|原来我从小就是个逻辑控?
🎈六一特别企划|不是吧!原来我从小就是个逻辑控? hi,AC狗友们 ,不是只有写代码才叫编程🧠 小时候玩过的那些游戏/玩具 ,可能早就偷偷给你种下了 逻辑思维的种子🌱 🕹️ 看到这些DNA动了没 🥇 Scratch小猫跳一跳 👉 原来“碰到边缘就反弹”就是if语句啊喂! 🥈 Minecraft红石电路 👉 第一次手动实现“与门”,比数学课还早 🥉 Lightbot点亮灯泡 👉 用函数调用那关,脑子直接“叮”一声通了 …… 🎁 换你了!!! 👉 你小时候玩过哪个 游戏/玩具 让你觉得“这好像在玩逻辑”? 👉 有没有一个瞬间,让你突然觉得“我脑子转得快是因为它”? 评论区直接写👇 格式不限,一句话or小故事都行~ 🎁 福利时间 活动截止后:符合活动要求的评论 * 点赞前6名 → 罐头 × 60 ; @RuiDaShuai2025,@全站的狗子我嘴最臭(慕温),@༺དༀ༒哦,那咋了༒ༀཌ༻,@💩💩百大游戏解说官💩💩,@shenzhangzheng小号,@小金 回关 * 随机抽6人 → 罐头 × 20 ;@仙布着急,@horse,@人机猫,@天之神-小天狼星·布莱克,@玩不死身游戏被转生苹果砸到(回关@天之神_†赛伊德† ⏰ 即日起 至 2026.6.8 💬 评论区交出你的启蒙游戏~ 往期互动

MMOI Round 1 题解
T1 刷怪塔 现在我们证明取 x=0x=0x=0 总是最优的。令最高层刷怪平台为 t=n−xt=n-xt=n−x,考虑通过接收平台满足目标的平台个数,即满足 i≤ti\le ti≤t 且 pi>tp_i>tpi >t 的 iii 的个数,由于 ppp 是一个排列,这个数量一定等于 pi≤t<ip_i\le t<ipi ≤t<i 的 iii 的个数,因此将 xxx 改为 000 后仍然满足 pi≤ip_i\le ipi ≤i,原来合法的仍然合法,不会变得更劣。 因此问题等价于求有多少 iii 满足 pi≤ip_i\le ipi ≤i,直接维护即可,时间复杂度 O(n+q)O(n+q)O(n+q)。 T2 染色 先将 1∼n−11\sim n-11∼n−1 的所有奇数颜色排成 …,5,3,1,?,1,3,5,…\dots,5,3,1,\text{?},1,3,5,\dots…,5,3,1,?,1,3,5,… 的形式,再将 1∼n−11\sim n-11∼n−1 的所有偶数颜色排成 …,6,4,2,?,?,2,4,6,…\dots,6,4,2,\text{?},\text{?},2,4,6,\dots…,6,4,2,?,?,2,4,6,… 的形式,将两者并排放置可以得到: …,5,3,1,X,1,3,5,…,6,4,2,Y,Z,2,4,6,…\dots,5,3,1,X,1,3,5,\dots,6,4,2,Y,Z,2,4,6,\dots …,5,3,1,X,1,3,5,…,6,4,2,Y,Z,2,4,6,… 此时还剩下 0,n,n0,n,n0,n,n 三个颜色要放在 X,Y,ZX,Y,ZX,Y,Z 的位置,而不难发现 XXX 与 ZZZ 下标差恰好是 n+1n+1n+1,因此令 X=Z=n,Y=0X=Z=n,Y=0X=Z=n,Y=0 即可构造出一个符合条件的序列,时间复杂度 O(n)O(n)O(n)。 T3 数学题 当整式 PPP 的次数 nnn 固定时,所求即为 a0+a1+⋯+an=n+Sa_0+a_1+\cdots+a_n=n+Sa0 +a1 +⋯+an =n+S 的方案数,其中 a0,a1,…,an−1a_0,a_1,\dots,a_{n-1}a0 ,a1 ,…,an−1 为自然数,ana_nan 为正整数。这可以转化为 (a0+1)+(a1+1)+⋯+(an−1+1)+an=S(a_0+1)+(a_1+1)+\cdots+(a_{n-1}+1)+a_n=S(a0 +1)+(a1 +1)+⋯+(an−1 +1)+an =S,其中 a0+1,a1+1,…,an−1+1,ana_0+1,a_1+1,\dots,a_{n-1}+1,a_na0 +1,a1 +1,…,an−1 +1,an 均为正整数。由插板法可得方案数为 (S−1n)S-1\choose n(nS−1 )。 对于第一问,好的整式 PPP 的个数即为 (S−10)+(S−11)+⋯+(S−1S−1){S-1\choose 0}+{S-1\choose 1}+\cdots+{S-1\choose S-1}(0S−1 )+(1S−1 )+⋯+(S−1S−1 ),这等价于从 S−1S-1S−1 个物品中选出来任意多个物品的方案数,所以第一问的答案为 2S−12^{S-1}2S−1。 对于第二问,由于次数为 nnn 的好的多项式的个数为 (S−1n)S-1\choose n(nS−1 ),我们可以从小往大枚举 nnn,统计次数小于等于 nnn 的好的多项式个数之和,直到数量大于等于 kkk 时输出答案。由于当 (S−1n)S-1\choose n(nS−1 ) 随着 nnn 增大是指数级别增长的,复杂度可以接受。 实现时可能需要使用 __int128。 T4 探索 显然移动后 x+yx+yx+y 的奇偶性不会改变,所以每个方格都只会有一条对角线可能被经过。考虑对于所有 x+yx+yx+y 为偶数的点建图,在每一个方格能经过的对角线两点间连边。问题转化为在这个图上至少要删除几条边才存在一条从 (0,0)(0,0)(0,0) 到 (x,y)(x,y)(x,y) 的欧拉路径。 这张图上两个点间的最短路长度很容易计算:d(P,Q)=max(∣xP−xQ∣,∣yP−yQ∣)d(P,Q)=\max(|x_P-x_Q|,|y_P-y_Q|)d(P,Q)=max(∣xP −xQ ∣,∣yP −yQ ∣)。 而一张图存在欧拉路径的充要条件是起点和终点的度数为奇数,其余点度数均为偶数。不难发现这张图上度数可能为奇数的点只有四个:A(0,0),B(n,0),C(0,m),D(n,m)A(0,0),B(n,0),C(0,m),D(n,m)A(0,0),B(n,0),C(0,m),D(n,m)。具体地,按照 n,mn,mn,m 的奇偶性可以得到: * n,mn,mn,m 都是奇数:奇度点是 A,DA,DA,D。 * nnn 是偶数,mmm 是奇数:奇度点是 A,BA,BA,B。 * nnn 是奇数,mmm 是偶数:奇度点是 A,CA,CA,C。 * n,mn,mn,m 都是偶数:奇度点是 A,B,C,DA,B,C,DA,B,C,D。 先考虑 n,mn,mn,m 中至少有一个是奇数时的做法。此时图中只有两个奇度点 AAA 和某一个角 ZZZ。若终点是 TTT,我们的目标就是删除一些边使得只有 A,TA,TA,T 的度数为奇数。不难发现这本质上相当于找到一条从 TTT 到 ZZZ 的最短路并删除,之后跑欧拉路径即可。 现在考虑 n,mn,mn,m 均是偶数的做法。类似地,我们要将 T,B,C,DT,B,C,DT,B,C,D 四个点分成两对,删去这两条最短路。可以证明,存在一种选这两条最短路的方案使得这两条最短路不重合。枚举配对方案,找到答案最小的一组即可。 注意上述讨论中没有考虑 T=A,B,C,DT=A,B,C,DT=A,B,C,D 的情况,实现时需要精细讨论。 时间复杂度 O(nm)O(nm)O(nm)。

官方题解 | 挑战赛#32题解
赛纲介绍 本次题目的总体题目难度如下,各位选手可以借此评估一下自身的技术水平。 题目编号 题目名称 题目难度 T1 项目计划 入门 T2 千载难逢的良缘 普及- T3 保险金 普及- T4 晋级赛 普及- T5 科技展示 普及- T6 活动筹备计划 普及- T1 项目计划 题目大意 给出项目数量和产线数量,并给出完成项目所需的时间,所有项目的时间都是给出的这个时间。求完成所有项目所需的总时间。 题解思路 先用取余运算确定完成所有项目所需的轮数,如果无法整除则需要单独再增加一轮时间。确定轮次之后计算总时间,可以先单独计算时分秒,再按秒分时的顺序进行进位判断。 需要注意输入的格式中存在 : 分隔符,需要用提示中的 scanf 获取,或在读取时注意 : 的位置。 参考代码 T2 千载难逢的良缘 题目大意 给出每个人的平分,评分差值的绝对值越小越有缘,求最有缘的两个分数以及他们的差值绝对值。 题解思路 差值绝对值最小的两个分数一定是大小最接近的,所以整体排序后遍历整个数组,记录其中差值绝对值最小的情况。 参考代码 T3 保险金 题目大意 给出每个客户的 mmm 条事故保险金,要求按照客户顺序处理,每个客户内按金额从小到大处理,直到当天能发放的保险金总额不够继续发放。 题解思路 按题目要求的顺序排序,可以使用结构体排序,按客户编号和金额大小排序,再模拟发放过程即可。 需要注意题目要求的输出格式,当遇到新客户时要输出名字和发放事故数,再输出每个事故的保险金数量。所以这里要记录上一个发放事故的客户编号,区分不同的客户。在输出时也要先遍历统计数量,再遍历输出对应的面额。 参考代码 T4 晋级赛 题目大意 给出选手分数,查询多个分数对应的无法晋级人数。 题解思路 由于是多次查询,因此可以先排序,再使用二分查找的方法查询晋级分数所在的数组下标,从而得到无法晋级的下标范围。 参考代码 T5 科技展示 题目大意 给出 n 件展品,选择 m 件展品,要求方案输出时编号按升序排列。 题解思路 经典深度优先搜索抽小球,需要注意用 vis 数组记录哪些展品已经选择。但本题中要求编号按升序排列,因此在递归时可以加入编号范围的参数,用于控制选取时的循环范围,确保选取编号是升序。 参考代码 T6 活动筹备计划 题目大意 三种任务在每天有不同的效果值,不能连续两天选择相同的任务,切换任务会获得对应的切换效果值。求 nnn 填的最大总效果值。 题解思路 由于每天每个任务的效果值都可能变化,所以选择动态规划,状态转移方程形如 dp[i][0]=max(dp[i-1][1]+w[1][0],dp[i-1][2]+w[2][0])+val[i][0];,其中 w[i][j] 表示切换任务 i 到任务 j 的效果值,val[i][j] 表示第 i 天完成任务 j 的效果值。 类似于涂色问题,由于选择任务时不能和前一天的任务相同,因此需要记录前一天选择的任务编号,重复的情况是无法转移的,同时前一天的任务编号也参与了切换效果值的计算。在 dp 数组的设计中选择二维形式,dp[i][j] 表示第 i 天选择任务 j 的最大总效果值。 参考代码
有帮助,赞一个