自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 codeblocks20.03使用-std=c++17报错的问题(勾选c++17会编译错误)

c++17 c++17标准 codeblocks20.03 报错 编译错误 解决办法

2022-06-21 20:06:54 911

原创 昆明 E.Counting Binary Trees

根据别人的思路实现的#include <bits/stdc++.h>using namespace std;using ll = long long;const int mod = 998244353;const int N = (int) 1e6 + 6;int n, m;vector<int> k;void input() { cin >> n >> m; k = vector<int>(m); for (auto&

2021-10-26 12:49:33 108

原创 证明problemB

有n个数字a[n](1<= a[i] <=k), 保证1-k每个数字至少出现一次, 求字典序最小的全排列 题目。为什么单调栈一定能找到最优解?使用反证法:假设正确答案是 x1,x2,x3,x4,...,xkx_1, x_2, x_3, x_4, ..., x_kx1​,x2​,x3​,x4​,...,xk​。假设通过单调栈找到的答案是 y1,y2,y3,y4,...,yky_1, y_2, y_3, y_4, ..., y_ky1​,y2​,y3​,y4​,...,yk​。假设这两个答

2021-08-18 17:42:43 106

原创 最大团的一种剪枝证明

针对这里面的第三种剪枝操作的证明假设无向图中顶点标号是0 ~ n - 1。依次求出[n - 1, n - 1], [n - 2, n - 1][n - 3, n - 1], … , [0, n - 1]区间内的最大团siz。分别记为sizn−1,sizn−2,sizn−3,...,siz0siz_{n-1}, siz_{n-2}, siz_{n-3}, ... , siz_{0}sizn−1​,sizn−2​,sizn−3​,...,siz0​。要证明:sizi−1−sizi≤1siz_{i -

2021-08-06 10:19:24 160

原创 F. Fence Job (SEERC 2020)

F. Fence Job输入序列a[n]。一个数可以向两边扩展,但不能逾越比它大的数。设l[i]表示a[i]左边界,r[i]表示右边界。设最终序列是b,如果bj==a[i], 那么l[i] < j < r[i]。比如: a[] = {2, 3, 4, 1};那么l[2] = 1, 因为a[1] < a[2];r[2] = 4, 因为a[4] < a[2];假设最终序列是b,那么b的前i个数可能有很多种情况。定义dp[i][j]:b中长度为i的以a[j]结束的前缀序列

2021-07-23 14:28:35 793

原创 I - Modulo Permutations (SEERC 2020)

I - Modulo Permutations (SEERC 2020)假设不含1和2,那么其余的数只能递减是的。可以将n个数分成两段。一段是以1开头的,一段是2开头的,算出分两段有多少种方案,再乘以n即可。例如当n为7时, 可分为如下两段1 7 5 32 6 4设 dp[i] 为现在第一段的最后一个数字是i, 第二段的最后一个数字是i - 1, 把大于i的数填写在这两段后面的方案数。怎么计算dp[i]:现在已知第一段最后是i第二段最后是i - 1那么可以枚举i - 1后面的与i-1

2021-07-22 12:29:11 963

原创 icpc 昆明 A.AC

icpc 昆明 A.AC反悔贪心,跟种树那题基本一样。[国家集训队]种树假设下标从1 到 n定义所需修改次数a[i], 表示将第i位和第i + 1位改为ac需要更改几次如果s[i] = ‘a’, s[i + 1] = ‘c’, 则a[i] = 0;如果s[i] = ‘a’, s[i + 1] = ‘a’, 则a[i] = 1;如果s[i] = ‘h’, s[i + 1] = ‘x’, 则a[i] = 2;如果用了 a[i], 那么就不能用a[i - 1]和a[i + 1]了比如s = “x

2021-04-10 21:55:46 256

原创 Buy Low Sell High CodeForces - 866D

Buy Low Sell High CodeForces - 866D贪心:能多赚就多赚假设当前是第i天,在前i - 1天中,有一些彩票已经在某一天被买入(价格为in),在另外一天卖出(价格为out)这些买入和卖出就被记录在表1中;其余的彩票(价格为p)被保留在表2中;表1:(out1, in1)(out2, in2)(out3, in3)…表2:p1p2p3…要想在第i天赚最多的钱有两种操作:操作1 从表2中选择最小的那个(假设其价格为x),今天的价格为y,那就把(y, x)

2021-03-23 19:13:28 174

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除