rep
  • 2024-07-01【pytest】失败用例,桌面截图
    @pytest.hookimpl(tryfirst=True,hookwrapper=True)defpytest_runtest_makereport(item,call):#executeallotherhookstoobtainthereportobjectoutcome=yieldrep=outcome.get_result()#rep可以拿到用例的执行结果详情ifrep.when=="ca
  • 2024-06-22UNIQUE VISION Programming Contest 2024 Summer (AtCoder Beginner Contest 359) 题解
    点我看题A-CountTakahashi没啥好说的点击查看代码#include<bits/stdc++.h>#definerep(i,n)for(inti=0;i<n;++i)#definerepn(i,n)for(inti=1;i<=n;++i)#defineLLlonglong#definefifirst#definesesecond#definepbpush_back#definemprmake_pair
  • 2024-06-17bzoj.org P07255 数字的拆分之二
    Description将数字N进行拆分.拆分出来的数字可以重复使用.FormatInput每一行给出一个数字N,3<=N<=500.整个测试以0代表结束.Output拆分的种数.这道题,看似变态难写,实则。。。一道******题。(观众:哇。。。。。。)这题是个简简单单的dp!N就是背包容量,但是物品体积在哪捏???就
  • 2024-06-15ABC358
    A.WelcometoAtCoderLand模拟B.TicketCounter模拟代码实现#include<bits/stdc++.h>#definerep(i,n)for(inti=0;i<(n);++i)usingnamespacestd;intmain(){intn,a;cin>>n>>a;vector<int>t(n);
  • 2024-06-07AT选做
    ABC265G.012Inversion延迟线段树每个点需要维护以下信息:\(0/1/2\)的个数有序对\((0,0)\),\((0,1)\),\((0,2)\),\((1,0)\),\((1,1)\),\((1,2)\),\((2,0)\),\((2,1)\),\((2,2)\)的个数对于操作二其实就是延迟线段树里的函数\(F\)代码实现#include<bits/stdc++
  • 2024-06-03ABC356
    A.SubsegmentReverse模拟代码实现n,l,r=map(int,input().split())l-=1a=list(range(1,n+1))a[l:r]=a[l:r][::-1]print(*a)B.Nutrients模拟代码实现#include<bits/stdc++.h>#definerep(i,n)for(inti=0;i<(n);++i)usingnamespacest
  • 2024-06-03[ICPC2024 Xi‘an I] ICPC2024 邀请赛西安站(7/8/13)
    心得[ICPC2024Xi'anI]ICPC2024邀请赛西安站重现赛-比赛详情-洛谷7表示赛时ac了7个,8表示含补题总共ac数,13表示题目总数题目M. ChainedLights打表,发现只有k=1是YES//#include<bits/stdc++.h>#include<iostream>#include<cstdio>#include<vector>#include<ma
  • 2024-05-30MITIT 2024 Spring Invitational Qualification 简要题解
    这个比赛没有找到题解,有点难绷,所以来写篇。(实际上是无聊时写的就是了)题面:https://codeforces.com/gym/105125/。目测难度是绿绿黄紫紫。A有点诈骗。其实策略是只保留\(\le3\)个数,然后就随便维护一下。\(O(n\logn)\)。Code#include<bits/stdc++.h>usingnamespaces
  • 2024-05-25ABC355
    A.WhoAtetheCake?模拟代码实现a,b=map(int,input().split())ifa==b:print(-1)else:print(6-a-b)B.Piano2模拟代码实现#include<bits/stdc++.h>#definerep(i,n)for(inti=0;i<(n);++i)usingnamespacestd;usingP=pair<
  • 2024-05-18ABC354
    A.ExponentialPlant模拟代码实现h=int(input())now,day=0,0whilenow<=h:now+=1<<dayday+=1print(day)B.AtCoderJanken2模拟代码实现#include<bits/stdc++.h>#definerep(i,n)for(inti=0;i<(n);++i)usingname
  • 2024-05-18CF-945(已更A,B)
    CF-945(A,B)A分析模拟合法情况下三个数的和只能是偶数:题中的两种操作显然都不会改变和的奇偶性这点我的代码中没有用到要使平局数最多,一定是最大的两个数减一,重复这个过程,直到两个较小的数都为零,且最大数一定是偶数,否则不合法:可以由题意和样例想到代码inta[4];voidso
  • 2024-05-14Dijkstra(迪杰斯特拉)
    Dijkstra(迪杰斯特拉)算法简单版须知首先用几个数组表示需要的状态:dis[] 表示距离从初始点到对应点的距离,初始点置为0,其他置为无穷graph[][]邻接矩阵,记录两点间连线的权重,可以记录无向图和有向图check[]判断当前点是否被记录算法思路:假定a为起点,每
  • 2024-05-04ABC352
    A.AtCoderLine判断\(z\)是否出现在\(x\)和\(y\)之间即可代码实现n,x,y,z=map(int,input().split())ifx>y:x,y=y,xifx<z<y:print('Yes')else:print('No')B.Typing模拟代码实现#include<bits/stdc++.h
  • 2024-05-03CF940F.Machine Learning-带修莫队、Mex
    给一个序列\(a\),两个操作:1、给\(l,r\),设\(a_l,\dots,a_r\)这些数集中每个数\(v\)的出现次数是\(c_v\),要求\(\mathrm{mex}(c_i)\).2、单点修改\(1\leqn,q\leq10^5\),时限4s这种一眼看过去很难维护的信息,一般就先找找性质。首先注意到关键性质:要求的是出现次数
  • 2024-05-01CF EDU164-E-数论分块
    link:https://codeforces.com/contest/1954/problem/E有一排怪物,第\(i\)只有\(a_i\)的血,每次攻击可以选择在\(i\)处放一个技能,技能会一直向左/右以相同的\(k\)点伤害扩散,直至遇到边界或已经死亡的怪物。问最少需要放几次技能?需要对所有\(k\)回答答案。\(n,a_i\leq10^
  • 2024-04-30题解 CF1965E【Connected Cubes】
    场切了1E,第一次上IGM,纪念一下。多图警告。我们称题目中的一个方块为“某色混凝土”。感受一下,发现本题主要的难点在于这些混凝土方块排布得太紧密了,导致容易出现互相遮挡的现象,进而难以构造。于是,我们先思考能否通过一些操作使得这些混凝土互相分离。如下图的方式可以将每两
  • 2024-04-29P1496 火烧赤壁
    题目:火烧赤壁题目背景曹操平定北方以后,公元208年,率领大军南下,进攻刘表。他的人马还没有到荆州,刘表已经病死。他的儿子刘琮听到曹军声势浩大,吓破了胆,先派人求降了。孙权任命周瑜为都督,拨给他三万水军,叫他同刘备协力抵抗曹操。隆冬的十一月,天气突然回暖,刮起了东南风。没想到
  • 2024-04-28P1719 最大加权矩形
    原题链接思路:首先需要回求最大子序列的和,(不会的可以写写这个题最大字段和)然后这个题就是最大字段和升级版(个人感觉)。就是把这个二维的矩阵对列利用前缀和进行降维然后对得到的一维数组进行dp(也就是动态规划求最大值)方法一:点击查看代码#include<bits/stdc++.h>#definei
  • 2024-04-27ABC351
    A.Thebottomoftheninth答案为\(\suma_i-\sumb_i+1\)B.SpottheDifference模拟C.Mergetheballs直接按题意模拟就是\(O(n)\)的,那么这题的瓶颈就在于两个球做合并,注意到\(2^a+2^a=2^{a+1}\),那么我们就可以不考虑底数\(2\),而直接处理指数即可代码实
  • 2024-04-25POI2012SQU-Squarks
    POI#Year2012#数学考虑如果将\(x_i\)和\(sum_i\)都排序,那么\(sum_1=x_1+x_2\),\(sum_2=x_1+x_3\)考虑枚举一个\(sum_i=x_2+x_3\),此时就可以确定\(x_1,x_2,x_3\)假设当前确定到\(i\),将已经确定的\(x_i\)组成的\(sum\)去掉,剩下的最小的\(sum\)一定为\(x_1+x_{
  • 2024-04-25POI2012ODL-Distance
    POI#Year2012#数学记\(cnt(x)\)为\(x\)的因子个数\(d(i,j)=cnt(a_i)+cnt(a_j)-2cnt(gcd(i,j))\)枚举\(i\),剩下的时间复杂度可以枚举\(gcd\),考虑此时应该贪心的取\(cnt(a_j)\)最小的\(j\)这样不能保证枚举的\(gcd=gcd(a_i,a_j)\)但是在\(gcd=gcd(a_i,a_j)\)
  • 2024-04-25POI2012FES-Festival
    POI#Year2012#Tarjan#最短路强联通分量之间是不影响的,考虑对于一个强联通分量内,方案数等于这个强联通内的最短路\(+1\)//Author:xiaruizeconstintN=6e2+10;intn,m1,m2;vector<int>g[N];intdis[N][N];boolvis[N];intdfn[N],top[N],low[N],tot;stac
  • 2024-04-25力扣-645. 错误的集合
    1.题目介绍题目地址(645.错误的集合-力扣(LeetCode))https://leetcode.cn/problems/set-mismatch/题目描述集合s包含从1到 n 的整数。不幸的是,因为数据错误,导致集合里面某一个数字复制了成了集合里面的另外一个数字的值,导致集合丢失了一个数字并且有一个数字重复。
  • 2024-04-20POI2011MET-Meteors
    POI#Year2011#整体二分整体二分板子,用树状数组维护即可//Author:xiaruizeconstintN=1e6+10;intn,m,t;vector<int>vec[N];structnode{ intl,r,x;}s[N];piia[N];structBIT{ inttr[N]; voidadd(intx,intv) { while(x<=m*2) {
  • 2024-04-20POI2011KON-Conspiracy
    POI#Year2011#数学考虑按照\(deg\)排序,然后暴力加入,这样可以得到一个极大的子集方案数分两种,一种为从团内去掉一个\(deg=siz-1\)的点,或者是将一个团外的\(deg=siz-1\)的点与一个团内的交换//Author:xiaruizeconstintINF=0x3f3f3f3f3f3f3f3f;constintMOD=10