• 2024-11-21E. C+K+S
    E.C+K+S很有意思的一个题。什么方案是合法的?一个入点连接到另一个图的出点,并且这个出点modk刚好比入点modk多一(不严谨但是理解即可)于是想到染色,染k个颜色,看有没有两张图上颜色入点个数与对应颜色出点个数相同的匹配方案先染色一张图,因为不确定第二张图要怎么染色,所以可以随
  • 2024-11-19CF837D Round Subset
    【刷题笔记】RoundSubset思路考虑最朴素的可行性\(DP\),设\(f_{i,j,x,y}\)表示前\(i\)个数,选了\(j\)个数,其中有\(x\)个\(5\)\(y\)个\(2\)时是否合法,但是枚举时间复杂度为\(O(n*k*n*log_5^{10^{18}}*n*log_2^{10^{18}})\)即\(O(n^3*k*log_5^{10^{18}}*log_2^{10^
  • 2024-10-142024/10/14 模拟赛总结
    \(0+100+40+0=140\),怎么都会T3啊#A.char令\(dp_{i,j}\)为已经考虑了文本串前\(i\)位且将所有*填入了字符,匹配了模式串的前\(j\)位的方案总数转移显然,若第\(i\)位不是*,则只有这一位和模式串相等才会有答案,即\(dp_{i,j}=\begin{cases}dp_{i-1,j-1}&s_i=t_k\\0&
  • 2024-09-17he 2024 ICPC Asia East Continent Online Contest (I)
    A.WorldCup这道题目难点主要是读懂题意,然后按照题意手玩一下就出来了。#include<bits/stdc++.h>usingnamespacestd;usingi32=int32_t;usingi64=longlong;#defineinti64usingvi=vector<int>;voidsolve(){intn=32;via(n);for(a
  • 2024-09-10LeetCode: 2552. 统计上升四元组 动态规划 时间复杂度O(n*n)
    2552.统计上升四元组today2552.统计上升四元组题目描述给你一个长度为n下标从0开始的整数数组nums,它包含1到n的所有数字,请你返回上升四元组的数目。如果一个四元组(i,j,k,l)满足以下条件,我们称它是上升的:0<=i<j<k<l<n且nums[i]<nums[k]<num
  • 2024-09-102024.08.25字节
    1.周期字符串小红有一个长度为n的字符串s,由0、1和*组成,可以把*替换成0或者1,小红想知道替换后的字符串的最短周期是多少,如果一个字符串每一个位置的字母都与后k位的字母相同,那么k即为该字符串的一个周期。形式化的说,如果存在一个正整数k使得对于所有的i属于[1,n-k]都有s
  • 2024-08-24相遇(容斥+最短路+分类,水紫)
    第5题   相遇 查看测评数据信息给定一个有n个节点m条边的无向图,在某一时刻节点st上有一个动点a,节点end上有一个动点b,动点a向节点end方向移动,要求是尽快到达end点,与此同时,动点b向节点st方向移动,要求是尽快到达st点,但是整个过程中a和b不能相遇,问两点不相遇一共有多少种
  • 2024-08-17P8844 [传智杯 #4 初赛] 小卡与落叶
    原题面:P8844[传智杯#4初赛]小卡与落叶大概题意:给你一棵有\(n(1\len\le10^5)\)个结点的有根树,根结点标号为\(1\),根节点的深度为\(1\),最开始整棵树的所有结点都是绿色的。小卡有\(m(1\lem\le10^5)\)个操作。操作一:把整棵树都染绿,之后让深度\(\gex\)的结点变
  • 2024-08-08Codeforces Round 964 (Div. 4)
    CodeforcesRound964(Div.4)A送分B大意:两个人两张牌随机翻求a翻出来的牌比b大的可能#include<cstdio>#include<cmath>#include<algorithm>#include<iostream>#include<cstring>#include<vector>#defineepemplace_backusingnamespace
  • 2024-08-022024牛客暑期多校训练营6赛后补题
    2024牛客暑期多校训练营6赛后补题B.Cake2题意:一块正n边形的蛋糕,沿着iii和i+
  • 2024-08-01洛谷题单指南-前缀和差分与离散化-P3029 [USACO11NOV] Cow Lineup S
    原题链接:https://www.luogu.com.cn/problem/P3029题意解读:不同的坐标位置有不同种类的牛,要计算一个最小的区间,包括所有种类的牛。解题思路:由于坐标位置不连续,并且数值范围较大,因此需要离散化处理,将坐标处理成1~n连续分布由于种类编号数值范围也比较大,也需要离散化处理,去重后的
  • 2024-07-26Codeforces Round 961
    省流:运气好没有掉分)B2Bonquet(HardVertion)(CF1995B2)事实上B1都写挂了(尖叫)处理花瓣数相差不超过1的花,可以用map存储每种花的数量,顺序遍历即可(其实是不想排序统计,好麻烦);那么如何计算最终答案呢。。。此处省略我赛时乱七八糟的一堆复杂做法,比较简单的写法是先找到一个可行的
  • 2024-07-17D. Round Subset
    原题链接题意选择\(k\)个数,使得\(\min(\sum2,\sum5)\)最大实施1.二维背包dp,使因数5和2达到某一值的最小选择个数,但是因子数量最多有3600,会T2.于是试着想能不能交换背包容量与价值?3.发现k最多只有200,好像可以细节最多有6000个五大约code#include<bits/st
  • 2024-05-31Atcoder ABC355 C~F
    C出题人太善良了,加强到\(10^5\)都没问题。考虑维护每条横线竖线两条对角线上被标记的点的个数,每次标记点后,判断是否有线上点全被标记。再考虑如何将点编号转为坐标,记编号为\(t\),推柿子:\[(x-1)\timesn+y=t\]\[nx+y=t+n\]\[x=\frac{t+n-y}{n}\]等同于找到\(y\)使得:\[n
  • 2024-05-23蓝桥杯-班级活动
    题目描述小明的老师准备组织一次班级活动。班上一共有(n)名((n)为偶数)同学,老师想把所有的同学进行分组,每两名同学一组。为了公平,老师给每名同学随机分配了一个(n)以内的正整数作为id,第(i)名同学的id为(a_i)。老师希望通过更改若干名同学的id使得对于任意
  • 2024-05-16PWM呼吸灯
    PWM呼吸灯设计一个周期是8ms的PWM,用来控制LED实现呼吸灯的效果。1. 设计分析PWM的周期为8ms,每0.1秒调整一次占空比,分10档,从95%、85%、....5%。这里需要设计三个计数器:8ms的计数器,0.1秒的计数器,1秒的计数器。经过测试可以发现档数越多,间隔越小,呼吸灯的效果就越细腻。 2. 代
  • 2024-05-06整体二分学习笔记
    最近准备学数据结构乱搞,接下来学k-dtree大致介绍可以使用整体二分解决的题目需要满足以下性质:1.询问的答案具有可二分性2.修改对判定答案的贡献互相独立,修改之间互不影响效果3.修改如果对判定答案有贡献,则贡献为一确定的与判定标准无关的值4.贡献满足交换律,结合律,具有可加
  • 2024-04-26查找链表倒数第k个数位置上的结点
    (1)描述算法的基本思想由题可知,该链表是个单向链表,如果要找到倒数第k个值,我们必须找到该链表的尾部,而单向链表从尾部向头部找倒数第k个值比较麻烦,所以我们可以从头部去找倒数第k个值(2)描述算法的详细实现步骤我们可以利用两个指针去遍历该链表,一个指针遍历完该链表计算出结点个数
  • 2024-04-18POI2010TEL-Teleportation
    分层图#贪心#POI#Year2010考虑将答案的图建成一个\(5\)层的图,其中\(1,2\)为第\(1,5\)层,第\(2,4\)层为已经与\(1,2\)相连的点考虑将剩下的点与第\(2,4\)层相连,贪心选尽可能大的//Author:xiaruizeconstintN=2e5+10;intn,m;vector<int>g[N];intcn
  • 2024-04-15边遍历边统计妙用
    链接:https://ac.nowcoder.com/acm/contest/80259/B来源:牛客网时间限制:C/C++1秒,其他语言2秒空间限制:C/C++262144K,其他语言524288K64bitIOFormat:%lld题目描述小红来到了地下城的一个房间,房间被分成n行m列的格子,小红站在其中一个格子上,她可以向一个方向攻击整条直线
  • 2024-04-12ZCMU-1053
    比较简单记录一下主要感觉它这个题目没说清楚,题目要求:先有n,接着给出长度为n的标准组,然后给出猜测组,输出的两个数一个是有多少个是相对应的既相同坐标其数值也相同,后一个是两个都有但是位置不同(不含已经相同的)我觉得它少了一类个例子:类似于123436133343思路:用
  • 2024-04-07小红书推荐系统(小红书24秋招后端开发)
    题面核心思想map记录String的出现次数set去重+自定义排序代码importjava.util.*;importjava.util.function.Function;publicclassMain{publicstaticvoidmain(String[]args){finallongMOD=(long)(1e9+7);Scannerscanner=new
  • 2024-03-30逆序并查集
    以L2-013红色警报为例原题链接https://pintia.cn/problem-sets/994805046380707840/exam/problems/994805063963230208?type=7&page=1下面贴上代码#include<iostream>usingnamespacestd;constintN=510;intp[N],g[N][N];intfind(intx){if(x!=p
  • 2024-03-27P1339 [USACO09OCT] Heat Wave G
    题解Dijkstra算法的应用,我这里采用了堆结构优化+反向索引堆优化最大化的优化了时间复杂度。题解区的复杂度是O(mlogm)而我优化后达到了O((n+m)logn)即复杂度和点的个数相关,而非边的条数。code #include<bits/stdc++.h>usingnamespacestd;constintN=6200*2+5;intn,m,s,t,
  • 2024-03-16LeetCode 992. K 个不同整数的子数组
    解题思路举一个例子可能会比较好理解nums=[1,2,1,2,3],k=2i表示的是右指针,j表示的是左指针。i=3时,需要求出符合子数组中含有k个不同整数,此时的j1=0需要求出符合子数组中含有k-1个不同整数,此时的j2=1j1~j2之间就是符合子数组中含有k个不同整数的子数组个数。相