• 2024-08-01题解:CF687C The Values You Can Make
    CF687CTheValuesYouCanMake题解题目翻译感觉不明不白的(至少我看了几遍没看懂),这里给个较为清晰的题面。题目描述给你\(n\)个硬币,第\(i\)个硬币有一个价值\(c_i\),你需要从中选出一些价值和为\(k\)的硬币组成一个集合,再输出这个集合中硬币可能组成的价值和。算法动
  • 2024-06-22[题解]AT_abc236_f [ABC236F] Spices
    思路首先对所有的\(c\)从小到大排序,然后对于每一个值如果之前能凑出就不选,否则就选。这样做显然是对的。令\(p_1,p_2,\dots,p_{2^n-1}\)表示将\(c\)排序之后,对应原来的下标;\(S\)表示选出数的集合;\(S'\)表示最终选出数的集合。可以证明两个问题:如果\(p_i\)可以被已选
  • 2024-05-11Codeforces 832E Vasya and Shifts
    考虑到这个操作实际上就是\(5\)进制的不进位加法,其实也就是\(5\)进制下的异或。同时因为是\(5\)进制,对于\(x\in[1,4]\),\(x\times0,\cdots,x\times4\)刚好可以表示出\(0\sim4\)。于是可以考虑类似\(2\)进制的线性基弄个\(5\)进制的线性基。即令\(w_i\)为
  • 2024-04-07货币系统—背包问题—python题解
    题目链接:货币系统题目描述:给定V种货币(单位:元),每种货币使用的次数不限。不同种类的货币,面值可能是相同的。现在,要你用这V种货币凑出N元钱,请问共有多少种不同的凑法。输入格式第一行包含两个整数V和N。接下来的若干行,将一共输入V个整数,每个整数表示一种货币的
  • 2023-09-23倍增与ST表
    倍增概念倍增是一种为了求解\(f^n(x)\),通过求解\(f(x),f^2(x),f^4(x),f^{2^m}(x)\)来求解的方法,直接求解的时间复杂度为\(O(xn)\),而使用倍增,就可以达到\(O(x\logn)\),是一种极其方便并且快速的方法。思路使用倍增我们需要先证明一下问题:\(\{x^i|0\lei<m\}(m\ge
  • 2023-08-222023.8.22 练习
    ARC068E考虑计算每辆列车,有多少种商品不被买到。第\(i\)辆列车,若有$k\cdoti<l,r<(k+1)\cdoti$,则不被买到。枚举\(k\)是调和级数的。那么这就是一个二维数点,计算有多少个\(l,r\)满足$k\cdoti<l,r<(k+1)\cdoti$。拆询问,变为前缀的形式。直接离线下来树状数组即
  • 2023-08-16CF1858C Yet Another Permutation Problem 题解
    思路这个题是一个简单的构造题。竟然比T2简单,也是少见我们可以首先从\(1\)开始不断乘以\(2\),像这样:\(1,2,4,8,16\cdots,2^x\),直到什么时候超过\(n\)就停止。这样相邻两个数字就可以凑出\(1,2,4,6,\cdots,2^{x-1}\),保证两两不同。然后我们可以从\(3\)开始不
  • 2023-08-05动态规划基础
    引入动态规划简介动态规划\(dp=Dynamic\Programming\)线性\(dp\):状态定义与题设线性相关将原问题分解成若干子问题设计状态:状态是当前问题所在的局面满足性质:无后效性,最优子结构转移:状态之间的关系,用转移方程描述动态规划(递推)和记忆化搜索(递归)时间复杂度相同记
  • 2023-08-02饭票 题解
    1.题意简述某天小\(x\)去食堂吃饭,手里有\(n\)种饭票,面值分别为\(A_1~A_n\),数量分别为\(C_1~C_n\)请你计算小\(x\)的饭票能组成多少在\([1,m]\)区间内的面值。2.样例解释3101242118样例中,我们有两张一元,一张两元和一张四元,可以凑出\(1\)到\(8\)元中所
  • 2023-02-07用一角、两角和五角的硬币凑出10元一下的金额 接力break
    #include<stdio.h>intmai(){   intx;   intone,two,five;   intexit=0;    scanf("%d",&x);   for(one=1;one<x*10;one++){  
  • 2023-01-04「洛谷 P1658」购物
    原题链接你就要去购物了,现在你手上有N种不同面值的硬币,每种硬币有无限多个。为了方便购物,你希望带尽量少的硬币,但要能组合出1到X之间的任意值。输出最少需要携带的
  • 2022-12-23什么是动态规划(Dynamic Programming)?动态规划的意义是什么?
     链接:https://www.zhihu.com/question/23995189/answer/613096905来源:知乎0.intro很有意思的问题。以往见过许多教材,对动态规划(DP)的引入属于“奉天承运,皇帝诏曰
  • 2022-11-26dp完全背包问题解组合问题——零钱兑换
    本题为完全背包问题,遍历容量需要顺序遍历classSolution{public:intchange(intamount,vector<int>&coins){//完全背包顺序遍历//背包容量为a
  • 2022-11-13两个动态规划的经典问题
    硬币问题问题描述:设有n种不同面值的硬币,各硬币的面值存于数组T[1:n]中。现要用这些面值的硬币来找钱。可以使用的各种面值的硬币个数存于数组Coins[1:n]中。对任意钱数0
  • 2022-10-03第十三届蓝桥杯C++B组国赛C题——卡牌 (AC)
    参赛话题:​​算法题解​​目录​​1.卡牌​​​​1.问题描述​​​​2.输入格式​​​​3.输出格式​​​​4.样例输入​​​​5.样例输出​​​​6.数据范围​​​​7.原题
  • 2022-09-05P4587 神秘数 Sol
    主席树好题。本质上是对于前缀的理解与转化。同题见牛牛的凑数游戏。实际上那场比赛T2和T3都是前缀相关的题目。这题是T3,看到很容易想到二进制拆分。稍微推广一
  • 2022-08-14【$dp$】$\text{LuoguP6570}$ 优秀子序列
    \(\text{LuoguP6570}\)优秀子序列读完题大概能yy到一个转移,即枚举两个不相交的子集然后转移。其实这题的顺序都无所谓,应该排个序,或者直接在值域上操作。\(DP\),用\(f