![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
刷题
Thrr
这个作者很懒,什么都没留下…
展开
-
【区间dp】odeforces1509 C. The Sports Festival
题目链接P.S今天刚和队友讨论dp真得是可简单可难,个人赛就补了一道区间dp的题Orz区间dp首先简单说明一下区间dp的概念吧:顾名思义,区间dp就是在区间上进行动态规划,求解一段区间上的最优解。主要是通过合并小区间的 最优解进而得出整个大区间上最优解的dp算法。题意有一个序列,将这个序列排序,使得排序后前i个数的最大数和最小数之差的和最小。思路状态转移方程:dp[i][j] = min((dp[i-1][j], dp[i][j-1]) + a[j] - a[l]);dp[i][j]表示区间原创 2021-09-12 00:57:43 · 79 阅读 · 0 评论 -
【思维+枚举】Codeforces-1230C-Anadi and Domino
题意:有如图所示的 21 个多米诺骨牌,给定一个无向图(无自环,无重边),一条边上可以放置一个多米诺骨牌。要求是如果两条边连接同一个顶点,那就必须使这两条边上的多米诺骨牌指向这个顶点的值相等,可以有不放的情况,问给定的图中最多可以放多少个多米诺骨牌。思路:假设n<=6每条边都可以放满多米诺骨牌,当n=7时,必定有2个点对应的数字是相同的,那么怎么确定这2个点呢,我们可以假设点i和点j对应的数字相同,那么当i和j分别与点k有边的时候,我们只能选择在i与k(或j与k)之间放一个多米诺骨牌,相当于我.原创 2021-09-01 23:00:54 · 140 阅读 · 0 评论 -
【二分】C - Number of Ways题解
C - Number of Ways暴力思路(TLE)求前缀和与后缀和找到和为ave的下标,然后二重循环判断是否满足条件。#include <bits/stdc++.h>#define ll long longusing namespace std;const int MAXN = 5e5 + 5;int a[MAXN];ll sum1[MAXN], sum2[MAXN], ave;vector<int> pos1,pos2;int main() { in原创 2021-08-13 15:24:02 · 208 阅读 · 1 评论 -
个人赛3补题
个人赛3补题题A Caisa and Sugar 所以one type指的是只能买一种糖果,且只能买一个orz#include <iostream>#include <stdio.h>//#include <windows.h>using std::max;const int MAXN = 105;int d[MAXN], c[MAXN], cost[MAXN];int main () { int n, s, ans = -1; sc原创 2021-07-12 09:49:10 · 61 阅读 · 0 评论 -
个人赛2补题
个人赛2补题AC代码题ARolling Dice #include <iostream>#include <stdio.h>//#include <windows.h>int a, b;bool ans = false;bool dfs(int times, int sum) { if (sum > 6 * times || sum < 1 * times) return false; if (sum / times >原创 2021-07-10 09:13:49 · 106 阅读 · 0 评论