SMU Winter 2023 Round #1 (Div.1) (2022湘潭大学校赛) 个人解题报告

gym源

A 社团招新

题面

SMU Winter 2023 Round #1 (Div.1) (2022湘潭大学校赛) 个人解题报告_第1张图片

思路

签到题,输入n后输出n即可,因为要成立最多的社团只能每个社团中仅有1人,

这样每两个社团之间的共同成员就是0个,是符合题意的最优解。

B 字符串

题面:

思路

用栈模拟,计算总次数判断奇偶性即可。

代码

D 香蕉

题面

SMU Winter 2023 Round #1 (Div.1) (2022湘潭大学校赛) 个人解题报告_第2张图片

思路

易知按照1,2,3...n的等差数列分配香蕉是使得答案为1的最小花费方案,

依此类推可知答案的花费具有单调性,因此可以二分。

代码

F 摘橘子

题面

SMU Winter 2023 Round #1 (Div.1) (2022湘潭大学校赛) 个人解题报告_第3张图片

思路

用dp[i][j] 表示前i棵树上总共摘的橘子数量%m等于j的方案数,n*m*m三层循环dp即可。

代码

G 排列

题面

思路

当N > M时必然有解,当N<=M时,N和M都较小,直接使用匈牙利算法进行匹配即可。

代码

J 在一起

题面

思路

题中给出了一棵树,每条边的权值与每点的权值,容易想到树形DP,

依题意推出转移方程后做两次DFS即可,转移方程见代码。

代码

你可能感兴趣的:(题解,c++,acm竞赛,算法)