每日训练题

10.3 - 10.9

1.Problem - 1739A - Codeforces

思路:贪心,输出棋盘的正中心即可

2.Problem - 1739B - Codeforces

思路:前缀和,保证新加的数比前面的前缀和小,否则输出-1

3.Problem - 1739C - Codeforces

思路: 

        第一种情况:Alice拿到 n,Alice必赢

        第二种情况:Bob拿到 n 和 n - 1,Bob必赢

        第三种情况:Bob拿到 n,Alice拿到 n - 1,则Alice第一回合必须打出 n - 1

        情况变成了讨论 n - 2 与 n - 3 的情况,且此时Bob先手

        通过上面的情况一直往下递推即可

4.Problem - 1739D - Codeforces

思路: dfs,二分

5.Problem - 1735B - Codeforces

思路:模拟

6.Problem - 1735C - Codeforces

思路:模拟,递归,贪心

7.Problem - 1729A - Codeforces

思路:模拟

8.Problem - 1729B - Codeforces

思路:贪心

9.Problem - 1729C - Codeforces

思路:构造,贪心

10.Problem - 1729D - Codeforces

思路:贪心,双指针

11.Problem - 1729E - Codeforces

思路:交互,概率

12.Problem - 1721A - Codeforces

思路:枚举,贪心

13.Problem - B - Codeforces

思路:贪心,模拟

14.Problem - C - Codeforces

思路:二分,贪心,双指针

15.Problem - 1721D - Codeforces

思路:位运算,排序

16.Problem - 1720A - Codeforces

思路:数学

17.Problem - 1720B - Codeforces

思路:贪心

18.Problem - C - Codeforces

思路:贪心

19.Problem - A - Codeforces

思路:数学

20.Problem - B - Codeforces

思路:构造

21.Problem - C - Codeforces

思路:贪心

22.Problem - 1733A - Codeforces

思路:排序,贪心

23.Problem - B - Codeforces

思路:数学

24.Problem - C - Codeforces

思路:排序,构造

10.10 - 10.16

1.Problem - 1719A - Codeforces

思路:数学

2.Problem - B - Codeforces

思路:化简式子,数学

3.Problem - C - Codeforces

思路:二分,贪心

4.Problem - 1741A - Codeforces

思路:字符串转化为数字进行比较

5.Problem - B - Codeforces

思路:贪心,特判3,其它的先输出n 和 n - 1,再顺序输出1到n - 2

6.Problem - C - Codeforces

思路:因为是按顺序累加,所以所有的和的取值为从一到n的和,共n个数,暴力枚举一遍即可

7.A-最大面积_牛客小白月赛57(重现赛) (nowcoder.com)

思路:取两个矩形的最小边相乘,注意爆int

8.B-种树_牛客小白月赛57(重现赛) (nowcoder.com)

思路:贪心,如果全是1答案为0,如果两端都有0则答案为2,否则答案为1

9.C-奇怪的电梯_牛客小白月赛57(重现赛) (nowcoder.com)

思路:贪心,先看能否直接到达,再讨论间接到达的方法

10.D-最大gcd_牛客小白月赛57(重现赛) (nowcoder.com)

思路:直接求Tle,转而求每一个数的约数,约数个数大于等于2的最大值即为答案

11.E-一道难题_牛客小白月赛57(重现赛) (nowcoder.com)

思路:因为只涉及到0和1,采用二进制不会爆longlong,暴力枚举每一位上的数字

12.Problem - 1741D - Codeforces

思路:每2,4,8......2的n次方是一组,从而开始分组判断是否符合题意和是否需要交换即可

13.Problem - 1741E - Codeforces

思路:从后往前,使用标记数组标记每一个位置能否到n,往前推,最后看1能否到n,dp

14.Problem - A - Codeforces

思路:取每个位置上不同的个数于总不同个数加一中的最小值

15.Problem - B - Codeforces

思路:模拟题意构造b数组,b[i]为a[i - 1] 于 a[i] 的最小公倍数,再进行判断即可

16.Problem - C1 - Codeforces

思路:存下当前这个数最多能在数组中担当第几个位置,依次往后存,累加结果即可

17.Problem - A - Codeforces

思路:对于输入的三个数,判断小的两个相加是否等于大的那个

18.Problem - B - Codeforces

思路:判断给定数组中是否有相等的值

19.Problem - C - Codeforces

思路:判断数组是否符合第一种情况的要求,不符合则为第二种情况,不能暴力判断,有特例

20.Problem - D - Codeforces

思路:常规遍历会超时,注意到最多只有1000个数,通过预处理将于每个数互质的数存起来,记录下每一个出现在数组中的数的最后一次出现的下标,依次枚举1000个数与它们的质数找到最大值

21.Problem - E - Codeforces

思路:将每次阶梯高度最大值的下标存起来,利用前缀和存放当前阶梯的高度,最后利用二分找到询问的腿长所对应的阶梯下标,输出前缀和数组对应的值

22.Problem - F - Codeforces

思路:利用数组存放 s 和 t 中字母出现的次数,比较 s 中的最小字母与 t 中的最大字母,如果小于则为yes,大于则为no,等于则继续判断数量,如果 s 数量小就看 s 中有无其它字母有即为no,无即为yes,数量大于或等于即为no

23.Problem - G - Codeforces

思路:第一个数必定是数组中最大的数,然后对于其它的数,按照当前结果与最终结果异或的值的二进制位数排序,当当前结果等于最终结果时,剩下的数随意排列即可

24.L-最大公约数_“帆软杯”武汉大学2022级新生程序设计竞赛 (nowcoder.com)

思路:在出现的 n * n 个数中,个数为奇数的数就是原来的数,因为gcd成对出现

25.B-苹果排序_“帆软杯”武汉大学2022级新生程序设计竞赛 (nowcoder.com)

思路:与逆序对对应

26.D-甩锅_“帆软杯”武汉大学2022级新生程序设计竞赛 (nowcoder.com)

思路:当两对称轴重合时,两人获胜的几率才相等

10.17 - 10.23

1.Problem - A - Codeforces

思路:先判断长度,再判断字母与数字是否一一对应

2.Problem - B - Codeforces

思路:记录下奇数和偶数的个数,每次加一类,加完后判断奇数有没有变偶数或偶数有没有变奇数

3.Problem - C - Codeforces

思路:判断每一个当前灯离下一个路灯的距离,取最大值

4.Problem - D - Codeforces

思路:预处理出来1到200000中每个数中能除以2的个数,然后计算出每个输入进来的数能除以2的个数,计算能否大与n与个数即可

5.Problem - E1 - Codeforces

思路: 枚举x,寻找符合条件的y

6.Problem - A - Codeforces

思路:排列组合

7.Problem - B - Codeforces

思路:贪心,穿插输出前后数字

8.Problem - C - Codeforces

思路:状态机模型,dp,注意这题卡long long

9.Problem - D - Codeforces

思路:贪心,s1取整个,s2暴力匹配取最大值

10.Problem - A - Codeforces

思路:遍历判断每一个位置哪种操作花费少

11.Problem - B - Codeforces

思路:若每个人没有穿衣服的时间,则最小第一一定为最小与最大坐标的中间值,其他人不用考虑,加上穿衣时间只需每个人的坐标变成加上穿衣时间和减去穿衣时间,再取2n个值中的最大值和最小值的中间值即可

12.Problem - C - Codeforces

思路:贪心,从尾部开始判断该数字是否比之前的数字大,如果大则必定加1,最后sort一下,因为位置可以随便选,所以可以保证小数字一定在前面

13.Problem - A - Codeforces

思路:贪心,让红的先走,再走蓝的

14.Problem - B - Codeforces

思路:贪心,先判断 s 与 k * b 的关系,再将所有结果都累加到某一个位置上,最后分别构造数组中的其他数字

15.Problem - 1715C - Codeforces

思路:找规律

16.H-Substrings_2022年华中科技大学程序设计新生赛 (nowcoder.com)

思路:模拟遍历一遍字符串

17.E-Merging Stones_2022年华中科技大学程序设计新生赛 (nowcoder.com)

思路:贪心,优先合并重量最小的两个石子

18.C-Roll the Circle_2022年华中科技大学程序设计新生赛 (nowcoder.com)

思路:模拟,最后可以化简为两圆半径和除以第二个圆的半径

19.L-Phigros_2022年华中科技大学程序设计新生赛 (nowcoder.com)

思路:模拟,计算现在能得的最大分除以总分值

20.N-Walk Alone's Conjecture_2022年华中科技大学程序设计新生赛 (nowcoder.com)

思路:构造题,构造任意符合要求的两个数即可,可以取出100000内质因子个数相等或者质因子个数相差为一的相邻的数,让后求他们与n的gcd,找出符合要求的两个数即可

21.J-Two Kings_2022年华中科技大学程序设计新生赛 (nowcoder.com)

思路:贪心,只有当W与L在同一条直线且距离差为偶数且L在W右边时,L可以阻止W,否则W取胜

10.24 - 10.30

1.Problem - A - Codeforces

思路:贪心,只要行比棋子数多就一定能移动

2.Problem - 1749B - Codeforces

思路:贪心,无论怎么选都可以变成从两边选,最后是有一个不用累加到旁边的人,所以加成总和后减去最大的b就行

3.Problem - C - Codeforces

思路:贪心,Alice每次选择所能选择中最大的删除,Bob每次选择数组中元素最小的元素增加,然后二分答案

4.Problem - D - Codeforces

思路:先算出方案总数,再算出非法的方案数,当且仅当a数组中的数与自身下标的最大公约数不为1时,a数组不合法,答案为总数减去非法的方案数

5.Problem - A - Codeforces

思路:从后往前遍历s,看是否每一个问题都有一个答案与其对应

6.Problem - B - Codeforces

思路:构造题,轮流输出后n/2个数和前n/2个数

7.Problem - C1 - Codeforces

思路:两项两项的考虑,若同号,则可以划分为一组,权值为00,若异号,则分别划分成一组,两组权值和为0

8.Problem - A - Codeforces

思路:构造题,交叉输出0与1,最后输出多余的0或1

9.A-下一个_齐鲁工业大学第四届程序设计竞赛 

思路:模拟

10.G-简单的数学_齐鲁工业大学第四届程序设计竞赛 (nowcoder.com)

思路:化简式子

11.C-勇者之塔_齐鲁工业大学第四届程序设计竞赛 (nowcoder.com)

思路:二分出走几步会跳到下一层,算出层数和最后的位置即可

12.L-奥特曼的时间管理_齐鲁工业大学第四届程序设计竞赛 (nowcoder.com)

思路:大模拟

13.E-贴贴_齐鲁工业大学第四届程序设计竞赛 (nowcoder.com)

思路:从n开始暴力向两边找符合要求的数字

14.B-新大陆_齐鲁工业大学第四届程序设计竞赛 (nowcoder.com)

思路:异或前缀和,如果某一个区域的数的个数为奇数,那么这个区域的异或值为区域的所有值,如果为偶数,则异或值为0,否则不满足要求

15.K-Leonard的树_齐鲁工业大学第四届程序设计竞赛 (nowcoder.com)

思路:dfs序建线段树

16.A-我会开摆_牛客小白月赛59 (nowcoder.com)

思路:判断每一个小方格是否符合要求

17.B-走廊的灯_牛客小白月赛59 (nowcoder.com)

思路:dp,状态机模型,存放最多连续着的亮的和灭灯

18.C-输出练习_牛客小白月赛59 (nowcoder.com)

思路:暴力枚举,注意特判0和1

19.D-国际象棋_牛客小白月赛59 (nowcoder.com)

思路:模拟落子,用一个数组存每个棋子当前的8个方向的状况,当满足连珠时退出

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值