06 2023 档案
1839D - Ball Sorting (dp)
摘要:题意:有一个1~n的序列,求放k个0后,最小操作次数 ,使得去掉0后序列升序, 每次操作;可以把与0相邻的数,放到任意位置 思路:因为n最大到500 ,并且求k属于1~n的所有最小代价,所以考虑dp dp[i][j] ,i表示以ai结尾放j个0的最小代价 最小代价等于去掉以ai结尾升序列后,剩余子段
1819B - The Butcher (思维)
摘要:大意:有一个大矩形,每次可以横着切或者竖着切,给你n个小矩形,问你原来的大矩形的宽高 思路:可以发现,最多有两种可能,找到所给矩形的宽和高的最大值,模拟check() 知识点:LL H=*max_element(a.begin(), a.end());数组最大值 ve.emplace_back(H,
1821D - Black Cells(暴力贪心枚举)
摘要:大意加思路:相当于有一个绳子,其中有n段可以上色,如果要给一段上色代价增加2,没向前走一步代价加一,可以看出代价最多可以去对掉长度为一的段落,因为最后要给x个点上色代价做少为x,而前面的段落给1个点上色代价最少为2,另外要考虑最后一段可能没有完全上色。 点击查看代码 ``` #include usi
Don't Blame Me (dp问题)
摘要:大意:有一个数组a,其中a[i]> dp(n+1,vector((1 点击查看代码 ``` #include using namespace std; typedef long long LL; typedef pair PLL; #define IOS cin.tie(nullptr)->sync