自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

CofDoria的博客

这是一个小小ICPCer的博客

  • 博客(50)
  • 收藏
  • 关注

原创 洛谷 P3313 [SDOI2014]旅行 题解

10^5个线段树动态开点+树链剖分

2022-07-15 13:38:21 216 2

原创 树链剖分简介【轻重链剖分】洛谷P3384

模板题:洛谷P3384传送门树链剖分可以做到 O(logn)O(logn)O(logn)修改树上两点之间的路径上所有点的值、 查询树上两点之间的路径上节点权值的和/极值(就是线段树能干啥它能干啥)。当然前置知识就是dfs\text{dfs}dfs和线段树。树链剖分有重链剖,长链剖,还有只听过的实链剖(看oiwiki所知,Link/cut Tree所用),一般未特指都是重链剖分。定义重子节点表示其子节点中子树最大的子结点。多个最大子节点取其中一个作重儿子即可。轻儿子作为重链顶点,一个轻儿子和多个重儿子

2022-05-04 23:52:53 316

原创 Codeforces Round #784 (Div. 4)题解 (第一次AK cf (XD

虽然是Div.4,但是第一次AK,还是有点小激动A. Division?模拟#include <bits/stdc++.h>using namespace std;string f(int n) { if (n <= 1399) return "Division 4"; if (n <= 1599) return "Division 3"; if (n <= 1899) return "Division 2"; return "Di.

2022-04-22 00:13:09 561

原创 2021-2022 ICPC, NERC, Northern Eurasia Onsite C,D,L题解

题目链接 https://codeforces.com/contest/1666文章目录C Connect the PointsD Deletive EditingL LabyrinthC Connect the Points题意给出三个点,找任意条平行x轴或y轴线段,使得线经过3个点,且线段长度和最小。思路手玩可以发现,线段和最长可以不超过3点x坐标最大差值加上3点y坐标最大差值,所以我们可以找到y坐标第二大的点,过它作一条从x最小值到x最大值的平行x轴线段,然后从另外两个点作到这个线段的垂线

2022-04-14 00:19:11 1661 1

原创 2022蓝桥杯C++B组省赛题目及个人解法

2022蓝桥杯C++B组省赛题面及个人解法

2022-04-10 11:48:21 6301 30

原创 第46屆ICPC 東亞洲區域賽(澳門)46届澳门站 C题 计算几何+双指针

第46屆ICPC 東亞洲區域賽(澳門)第46届ICPC亚洲区域赛 澳门站 C题题解 解法:计算几何+双指针

2022-04-06 13:04:31 880

原创 浙江工业大学第十九届“杭银理财杯”大学生程序设计竞赛暨全国邀请赛 部分题解

7-6 Tree Game构造,从叶子节点开始 dfs同时涂色即可保证最多一个ugly node#include <bits/stdc++.h>using namespace std;#define ll long long#define bug printf("***********\n");#define endl "\n"const ll N = 3e5 + 7;int n, k;vector<int> road[N];int du[N];bool is

2022-03-20 19:36:09 1437 8

原创 字符串哈希详解 二维哈希 Hash

字符串hash方法字符串 hashhashhash 就是把一个字符串映射成一个非负整数。(同时碰撞的概率极低)设计一个较大质数 ppp,把字符串看作 ppp 进制数。(如 313131,131131131,133113311331)(想想为什么要用质数)对于已知的字符串 sss,我们有 hashhashhash 值为 H(s)\text{H}(s)H(s),那么我们在 sss 后面增加一个字符 ccc 构成新的字符串 s+cs+cs+c,该串的 hashhashhash 值则为 H(s)∗p+(c

2022-01-06 16:18:20 1092

原创 线段树详解

线段树这是一棵线段树,线段树是一颗严格的二叉树,根节点存储了区间长度为 n=8n=8n=8 的信息,每个节点会不断二分为 222 个子节点,分别包含原本一半的信息,节点会二分到区间大小变成 111 为止,同时该线段树高度为 ⌈log2n⌉+1\lceil{log_{2}n}\rceil+1⌈log2​n⌉+1。同时若每个节点的编号为 ddd,则其子节点的编号为 d∗2d*2d∗2 和 d∗2+1d*2+1d∗2+1。线段树的建立从根节点开始建立线段树,不断递归构建其左右孩子,直至叶子节点(区间大小

2022-01-06 16:15:26 680

原创 数据挖掘导论 部分考点

可能不准确 欢迎指出信息总量、增益、增益率决策树中 根节点 xxx 有两个分支:x1x_1x1​、x2x_2x2​信息总量Info(I)=−(tot_yestotlog2tot_yestot+tot_nototlog2tot_notot)\text{Info(I)} =-(\frac{tot\_yes}{tot}log_{2}\frac{tot\_yes}{tot}+\frac{tot\_no}{tot}log_{2}\frac{tot\_no}{tot})Info(I)=−(tottot_.

2021-12-20 21:27:06 404

原创 2021/10/10 CCPC第二场网络赛 1011-Jumping Monkey

思路Accepted Code#include <bits/stdc++.h>using namespace std;int n, u, v;vector<int> mp[100005];int f[100005];inline int findf(int x) { return (f[x] == x ? x : f[x] = findf(f[x])); }vector<pair<int, int>> q;vector<int&gt

2021-10-11 00:07:57 271

原创 luogu P2568 GCD 题解 (欧拉筛+欧拉函数)

[ 传送门 ] 题面题意很简洁,给定正整数 nnn,求 1≤x,y≤n1\le x,y\le n1≤x,y≤n 且 gcd⁡(x,y)\gcd(x,y)gcd(x,y) 为素数的数对 (x,y)(x,y)(x,y) 有多少对。思路对于 gcd⁡(x,y)\gcd(x,y)gcd(x,y),本质就是找 xxx 和 yyy 的最多公有的质因子。所以 gcd⁡(x,y)\gcd(x,y)gcd(x,y) 为素数本质是只有一个公有质因子。我们可以对每个素数(即质数)找到与之乘积最接近 nnn 且不大于 .

2021-08-23 17:20:37 179

原创 Codeforces Round #735 (Div. 2) C. Mikasa 题解

C. Mikasa 传送门Accepted code#include <bits/stdc++.h>using namespace std;#define ll long longvoid print(int i) { int ok = 0; if(i & 1) ok = 1; if(i >> 1) print(i >> 1); printf("%d", ok);}ll t, n, m;ll ans = 0;

2021-07-30 09:49:22 194

原创 Codeforces Round #731 (Div. 3) A - D 题解

A.Shortest Path with Obstacle思路起点、终点和障碍在同一直线,且障碍在起点终点之间则要多走 222 步绕开障碍Accepted code#include <bits/stdc++.h>using namespace std;int t;int sx, sy, fx, fy, tx, ty;int main() { scanf("%d", &t); while (t--) { scanf("%d%d", &am

2021-07-11 01:18:26 152

原创 2021年第十二届蓝桥杯大赛软件赛决赛(国赛)C/C++大学B组题面

2021-06-07 13:02:16 545

原创 2021第十二届蓝桥杯B组 C++省赛第二场题解

题面:[ 传送门 ]A 求余签到题B 双阶乘#include<bits/stdc++.h>using namespace std;#define ll long longll gcd(ll a,ll b){ return b==0?a:gcd(b,a%b);}int main(){ ll ans=1; for(int i=1;i<=2021;i+=2){ ans*=i; ans%=100000; } cout<<ans; return

2021-05-09 16:50:19 710 6

原创 2021第十二届蓝桥杯C++ B组省赛第二场题面

个人题解:[ 传送门 ]

2021-05-09 16:13:49 1018 8

原创 2019蓝桥省赛B组编程题第3、4题题解(等差数列,后缀表达式)

等差数列本题的考点为最大公因数(GCD)(GCD)(GCD)的求法 (即辗转相除法(如有需求请自行百度))。由于 A1A_1A1​~AnA_nAn​ 不一定是按等差数列顺序给出,所以需要排序 (sort( )sort(~)sort( ))​。想求包含 nnn 个元素的最短等差数列,就要使公差最大。对于所有两两元素之间的差求最大公因数,该数即为该等差数列的最大公差。有了最大公差,就好求出最小长度了。注意特判差为 000 的情况。#include <bits/stdc++

2021-04-09 12:49:43 127 1

原创 算法竞赛入门经典训练指南(蓝书)Ping pong(UVaLive4329)树状数组

题意在一个序列中,存在三个数为升序摆放或降序摆放,则这三个数可以视作能够举行比赛。问比赛的种数。ps.升序或降序表示两个运动员之间的人中有人可以充当裁判,同时两个运动员愿意去裁判家中比赛。思路若 a1a_1a1​ 到 ai−1a_{i-1}ai−1​ 有 bib_ibi​ 个数比 aia_iai​ 小,那么就有 i−1−bii-1-b_ii−1−bi​ 个数比 aia_iai​ 大。所以我们可以记录 aia_iai​ 左边比 aia_iai​ 小的数与 aia_iai​ 右边比 aia_iai​ 小

2021-03-08 17:12:49 320 1

原创 Educational Codeforces Round 105 (Rated for Div. 2) B. Berland Crossword 题解

题意给出五个数 n,U,R,D,Ln,U,R,D,Ln,U,R,D,L,代表一个 n×nn \times nn×n 的网格最上层黑格个数(U)(U)(U),最右列的黑格个数(R)(R)(R),最下层的黑格个数(D)(D)(D)和最左列的黑格个数(L)(L)(L)。求这样的网格是否存在。思路对四个角的网格的所有可能判定是否存在。四个角的网格所有可能的枚举可以用 bitsetbitsetbitset 来实现。Accepted code/* * @Autor: CofDoria * @Date: 2

2021-03-06 14:42:22 111

原创 第八届“图灵杯”NEUQ-ACM程序设计竞赛题解报告 [A题待补]

→ 比赛传送门 ←ABCDEFGHIJKL○√√√√○○√√√○√√ 表示已完成,○表示待补B 小宝的幸运数组题意定义一个和能被幸运数字整除的数组被称为“幸运数组”现给幸运数字 kkk 和长度为 nnn 的数组 aaa,求最长的幸运子数组。思路首先求出数组 aaa 的前缀和数组,然后对前缀和数组的各位对 kkk 取模运算。先记录各种模数最先出现的位置,再找最后出现的相同模数的位置并维护幸运子数组长度的最大值。Accepted

2021-01-31 22:07:07 189 1

原创 Educational Codeforces Round 103 (Rated for Div. 2) 【A,B,C】题解

EDU Round 103 Div.2A K-divisible Sum题意输入 nnn 和 kkk,要求设计由 nnn 个正整数相加成一个数,且这个数是 kkk 的倍数,同时要求这 nnn 个正整数的最大值尽可能小,并输出这个最大值。思路首先是 k≤nk≤nk≤n 的情况,当 k≤nk≤nk≤n 且 nnn % k==0k==0k==0,nnn 全设为 111,即可满足条件。若无法除尽,则给多个元素加 111,将和增至 kkk 的两倍。其次是 k>nk>nk>n 的情况,当

2021-01-30 12:59:02 330

原创 django继承AbstractUser新建User Model时出现(fields.E304)ERROR的具体解决办法

数据库迁移时报错:ERRORS:auth.User.groups: (fields.E304) Reverse accessor for 'User.groups' clashes with reverse accessor for 'User.groups'. HINT: Add or change a related_name argument to the definition for 'User.groups' or 'User.groups'.auth.User.user_permiss

2021-01-14 21:56:19 389

原创 牛客小白月赛31 [ C,D,G,H,I ] 题解报告

[原题传送门]C.图像存储题目数字图像是一个由“0”和“1”这两个元素组成的矩阵,除去边角上的元素,每个元素都有上下左右相邻的四个元素。再一个数字图像中,元素“0”代表空白,只有元素“1”所在的位置才有一个黑点。由此,一副黑白的图像得以显现。为了能在更少的空间里存储更多的图像,一个可行的办法就是每种相同的黑块只保留一个,其他的地方只保留位置,这样便实现了压缩。查看时,只需将保留的黑块拓印到其它的位置,这样就实现了图像的复原。可见,该技术的关键就是对不同的黑块进行记录。我们把由若干个相邻的“1”构成

2021-01-11 03:14:34 352

原创 2020/11/28天梯赛L1-1至L2-4(L2-2领口罩除外)

目录L1-1L1-2L1-3L1-4L1-5L1-6L1-7L1-8L2-1L2-3L2-4L1-1/* * @Autor: CofDoria * @Date: 2020-11-28 13:30:32 * @LastEditTime: 2020-11-28 13:31:00 */#include <cstdio>using namespace std;int main() { printf("Talk is cheap. Show me the code.");

2020-11-29 20:03:09 502 1

原创 武汉工程大学第三届ACM程序设计新生赛(多校联赛)2020/11/21题解报告

本题解按本人出题顺序排列A 如何才能防AK题目描述AKAKAK, AllAllAll-KilledKilledKilled的缩写,指在比赛中解出了所有的题目。通常在ACMACMACM比赛中出题人会出111~222道非常难的题目来防止有人AKAKAK,以体现出出题人的水平高超,这些题目被称为“防AKAKAK题”。此次的新生赛中kcxz是出题者的一员,kcxz知道这次比赛会有大佬参赛,所以如何出防AKAKAK题成为了令kcxz头痛的事。现在kcxz对过题数目进行一个简单的模拟,请你根据每个选手的过题数来

2020-11-21 21:02:08 958

原创 2020 第十一届蓝桥杯决赛(国赛)题目 C++ B组

该资料仅供学习参考

2020-11-15 00:38:22 6429 7

原创 新生训练第二场 K 手机号码

传送门题目奶牛BessieBessieBessie最近买了一台手机,它的手机号码是:133003030031330030300313300303003,手机号码由111111个数字组成。BessieBessieBessie最近在上电脑课学了【复制】和【粘贴】,于是它打开wordwordword软件,把它的手机号码复制,然后粘贴了NNN次。例如NNN=111时,是这样:133003030031330030300313300303003 。又例如NNN=222时,是这样:133003030031330030

2020-11-11 21:42:15 854

原创 黑书-POJ-2528 Mayor‘s posters (自写lazy-tag,1000ms惊险过题)

题意nnn(nnn<=10000) 个人依次贴海报,给出每张海报所贴的范围lil_ili​,rir_iri​(1<=lil_ili​<=rir_iri​<=10000000) 。求出最后还能看见多少张海报。输入描述第一行: 样例个数 TTT对于各样例第一行: 贴海报的人nnn接下来nnn行: 每个人贴海报的范围输出描述各样例一行,输出可以看见的海报个数思路使用线段树储存每个海报的范围,线段树的精髓就是能使用根节点就不使用叶子节点,减少下探的次数,减小算法复杂度

2020-11-09 16:13:56 96

原创 HDU-1166:敌兵布阵(线段树入门必做)

传送门目录敌兵布阵题目输入描述输出描述exampleinputoutputAccepted code敌兵布阵题目C国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了。A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情况。由于采取了某种先进的监测手段,所以每个工兵营地的人数C国都掌握的一清二楚,每个工兵营地的人数都有可能发生变动,可能增加或减少若干人手,但这些都逃不过C国的监视。中央情报局要研究敌人究竟演习什么战

2020-11-08 21:35:17 402

原创 洛谷 P2580 于是他错误的点名开始了 c++

原题链接题目背景XS中学化学竞赛组教练是一个酷爱炉石的人。他会一边搓炉石一边点名以至于有一天他连续点到了某个同学两次,然后正好被路过的校长发现了然后就是一顿欧拉欧拉欧拉(详情请见已结束比赛 CON900)。题目描述这之后校长任命你为特派探员,每天记录他的点名。校长会提供化学竞赛学生的人数和名单,而你需要告诉校长他有没有点错名。(为什么不直接不让他玩炉石。)输入格式第一行一个整数 nnn,表示班上人数。接下来 nnn 行,每行一个字符串表示其名字(互不相同,且只含小写字母,长度不超过 5050

2020-10-21 16:45:40 207

原创 UVa1347 Tour C++记忆化搜索

virtualjudge地址题意有111到nnn,nnn个点。设计一条路线从111开始走到nnn,再从nnn走回111,除点111经过222次以外,其他点能且只能经过111次。现给你点的个数nnn,和每个点的横纵坐标 xix_ixi​, yiy_iyi​,问在此规则下最短路径为多少?思路可以将问题看成两个人从111出发,最终都走到nnn的最短路,同时每个点都要被第一个人或第二个人的其中一人经过。所以可以设计状态为 DP(i,j)DP(i,j)DP(i,j)为计算两个人从第iii个点和第jjj个

2020-10-07 17:45:39 119

原创 ICPC Northeastern European Regional Contest 2019 签到题-B.Balls of Buma

Balph is learning to play a game called Buma. In this game, he is given a row of colored balls. He has to choose the color of one new ball and the place to insert it (between two balls, or to the left of all the balls, or to the right of all the balls).Wh

2020-09-02 16:32:31 275

原创 Codeforces Round #662 (Div. 2) [ A , B ] 题解报告

文章目录A. Rainbow Dash, Fluttershy and Chess ColoringInputOutputExampleinputoutputNote思路my Accepted codeB. Applejack and StoragesInputOutputExampleinputoutputNote思路my Accepted code[contest link]A. Rainbow Dash, Fluttershy and Chess ColoringOne evening Rain

2020-08-08 11:41:37 251

原创 2020牛客暑期多校训练营(第八场)K - Kabaleo Lite 题解

[原题传送门]Tired of boring WFH (work from home), Apollo decided to open a fast food restaurant, called Kabaleo Lite\textbf{Kabaleo Lite}Kabaleo Lite.The restaurant serves n kinds of food, numbered from 1 to n. The profit for the i-th kind of food i

2020-08-03 20:00:26 354

原创 2020牛客暑期多校训练营(第七场)[ B , D , H ]题解

B , D , H 题解B - Mask Allocation输入输出样例inputoutput思路my Accepted codeD - Fake News输入输出样例inputoutput思路my Accepted codeH - Dividing输入输出样例inputoutputinputoutput思路Accepted codeB - Mask AllocationNowadays, the Kingdom of Dreamgrid is suffering from a national pa

2020-08-01 17:09:06 1638 3

原创 Codeforces Round #653 (Div. 3) [A,B,C,D,E1] 题解报告

A. Required RemainderYou are given three integers x,y and n. Your task is to find the maximum integer k such that 0≤k≤n that kmodx=y, where mod is modulo operation. Many programming languages use percent operator % to implement it.In other words, with gi

2020-07-08 20:16:02 410

原创 Educational Codeforces Round 90 (Rated for Div. 2) [A,B,C]

A. Donut ShopsThere are two rival donut shops.The first shop sells donuts at retail: each donut costs a dollars.The second shop sells donuts only in bulk: box of b donuts costs c dollars. So if you want to buy x donuts from this shop, then you have to b

2020-07-06 17:58:28 261

原创 Qt Creator安装后 创建项目Kit selection显示no valid kit found(Windows系统)

按照教程下载5.9.0版本的Qt后,跟着步骤创建项目,发现kit selection界面显示no valid kit found点击options添加出现如下情况Qt版本没有选项,后面自己琢磨,发现问题所在安装时只勾选了QtCreator组件(图他不占地)在3个选项都勾选的情况下安装后,成功出现kits选项...

2020-07-05 16:50:20 17304 4

原创 Codeforces Global Round 9 [A,C]

目录A. Sign FlippingInputOutputExampleinputoutputNote题意思路my Accepted codeC. Element ExterminationInputOutputExampleinputoutputNote题意思路myAccepted code[官方英文题解][比赛传送门]A. Sign FlippingYou are given n integers a1,a2,…,an, where n is odd. You are allowed to fl

2020-07-05 14:00:29 238

空空如也

空空如也

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

TA关注的人

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