- 2025-01-08全排列(递归)
题目链接:https://leetcode.cn/problems/permutations/思路:只用题目给的nums数组进行递归,swap进行交换,注意还原现场classSolution{public:vector<vector<int>>permute(vector<int>&nums){vector<vector<int>>ans;f(nums,an
- 2025-01-07interval coverage
题意理解:给定一个区间,我们需要把这个区间覆盖掉。问最少需要的区间数目。当然我们会给定n个区间选择。假设全选都不能覆盖就输出−1-1−1
- 2025-01-07子集(递归)
题目链接:https://leetcode.cn/problems/subsets-ii/submissions/591733085/题意:给你一个数组,输出不同数字的组合(若两个组合都挑一个1,一个2,无论顺序如何,只输出一个)思路:先排序,将不同数字分组,再讨论每组选0,1,2,...n个的情况classSolution{public:vector<vector<int>>sub
- 2025-01-071月7日
上午思维题训练https://codeforces.com/contest/2026/problem/Chttps://codeforces.com/contest/2026/problem/Bhttps://codeforces.com/contest/2023/problem/Ahttps://codeforces.com/contest/2034/problem/D下午https://vjudge.net/problem/HDU-4612题意:有一个无向图,加
- 2025-01-07【Day 11 LeetCode】二叉树的遍历
一、二叉树的遍历二叉树的遍历主要分为深度优先遍历和广度优先遍历。深度优先是先往深处走,走到尽头返回;广度优先遍历是一层一层往下遍历。其中,深度优先遍历对应三种顺序,前序、中序、后序遍历,特点也很好记,就是根节点的位置。根节点位于前面就是前序,遍历顺序为根节点-左子
- 2025-01-07最低票价(记忆化搜索/动态规划)
题目链接:https://leetcode.cn/problems/minimum-cost-for-tickets/题意:给你一个数组days[]代表旅行的日期,一个数组costs[],可以分别选择1天或7天或30天的票,问你使旅行结束所需要的最低票价是多少示例1:输入:days=[1,4,6,7,8,20],costs=[2,7,15]输出:11解释:例如,这里有
- 2025-01-07一维动态规划
[Algo]一维动态规划fx1-暴力递归,fx2-自顶向底动态规划(记忆化搜索),fx3-自底向顶动态规划(严格位置依赖)1.最低票价//1.最低票价//https://leetcode.cn/problems/minimum-cost-for-tickets/description/intduration[3]={1,7,30};intf11(vector<int>&da
- 2025-01-07MATLAB的cat函数
在图像处理中,我们将图像导入MATLAB中,通常以矩阵的形式进行处理;在各种的处理过程中,我们不可避免的要完成对矩阵的拼接,主要分为纵向和横向两种方式。1、横向拼接横向拼接可以考虑使用:“,”或者“空格”;A=[111;222;333];B=[444;555;666];C=[777;888;99
- 2025-01-07海贼OJ #251. 士兵 题解 排序+中位数(数学思维题)
题目链接:https://oj.haizeix.com/problem/251解题思路:最短总距离是所有点到中位数的距离之和。对\(y\):排序求中位数。对\(x\):对\(x\)排序,然后对排序后的\(x_i-i\)排序,然后求最短距离。对\(x_i-i\)进行处理,能保证最终的\(x_i\)各不一样且相邻。示例程序:#inclu
- 2025-01-07605 [CF 609E] Minimum spanning tree for each edge
//605[CF609E]Minimumspanningtreeforeachedge.cpp:此文件包含"main"函数。程序执行将在此处开始并结束。///*http://oj.daimayuan.top/course/22/problem/981给定一张n个顶点m条边的带权无向简单图,顶点编号从1到n,对于每一条边请求出包含这条边的生成树
- 2025-01-06题解:CF2057B Gorilla and the Exam
CF2057BGorillaandtheExam思路不难发现其实每次操作就是把数组\(a\)内所有值为\(y\)的数都删除掉(\(y\)为数组\(a\)中的莫一个值)。所以我们需要把尽可能多的数都变成原来数组里出现次数最多的数(从出现数量最少的开始,这样能使得消失的数值种类最大化)。首先想到使用数组
- 2025-01-06二项式 & 容斥原理学习笔记
容斥原理先从容斥原理开始。容斥原理的结论如下:\[|\bigcup\limits_{i=1}^{n}S_{i}|=\sum\limits_{m=1}^{n}(-1)^{m-1}\sum\limits_{a_{i}<a_{i-1}}|\bigcap_{i=1}^{m}S_{a_{i}}|\]证明的思路是考虑一个元素在每一个\(\bigcap\limits_{i=1}^{m}S_{a_{i}}\)
- 2025-01-06604 路径上的最小点权
//604路径上的最小点权.cpp:此文件包含"main"函数。程序执行将在此处开始并结束。///*http://oj.daimayuan.top/course/22/problem/980给你一棵有n个节点的树,节点编号从1到n,每个节点有一个点权ai。有q次询问,每次询问读入两个整数u,v,请问从u号点到v号点
- 2025-01-06蓝桥20034-幸福饺子馆 找规律/组合数学/逆元
https://www.lanqiao.cn/problems/20034/learning/?page=1&first_category_id=1点击查看代码'''找规律在组合中存在对称性,即递增的位置对称,如111311231133122312331333一共存在K种组合,则[L,R]中的数字会平分K*(N-2)次出现,然后L,R会各自再出
- 2025-01-06二项式反演和容斥原理学习笔记
容斥原理先从容斥原理开始。容斥原理的结论如下:$$|\bigcup\limits_{i=1}^{n}S_{i}|=\sum\limits_{m=1}{n}(-1)\sum\limits_{a_{i}<a_{i-1}}|\bigcap_{i=1}^{m}S_{a_{i}}|$$证明的思路是考虑一个元素在每一个$\bigcap\limits_{i=1}^{m}S_{a_{i}}$里出现的次
- 2025-01-05AcWing 799:最长连续不重复子序列 ← 双指针
【题目来源】https://www.acwing.com/problem/content/801/【题目描述】给定一个长度为n的整数序列,请找出最长的不包含重复的数的连续区间,输出它的长度。【输入格式】第一行包含整数n。第二行包含n个整数(均在0∼10^5范围内),表示整数序列。【输出格式】共一行,包含一个
- 2025-01-05code
#include<bits/stdc++.h>usingnamespacestd;#defineendl'\n'#defineFL(a,b,c)for(inta=(b),a##end=(c);a<=a##end;a++)#defineFR(a,b,c)for(inta=(b),a##end=(c);a>=a##end;a--)#definelowbit(x)((x)&-(
- 2025-01-05大一计算机的自学总结:二分搜索
前言回顾之前初学循环时写过的猜数小游戏,若范围是0~100,大多数人的猜法都是先猜50,若大了,则猜25;若小了,则猜75......这种搜索方法,就是二分搜索。一、二分搜索原理二分搜索的原理很简单,但非常实用。二分搜索时,每次都把有序数组分成两份,判断中点位置的值和要搜索的值的大小关系,然
- 2025-01-05日常训练2025-1-5
日常训练2025-1-5L.BridgeRenovationrating:1400https://codeforces.com/problemset/problem/2038/L思路(贪心)需要思考每种板子的组合方式,最好的组合方式是两个2号板子和1个1号板子,加起来只消耗一块板子。其次是三块1号板子加起来只消耗一块板子。然后就是两块任意板子
- 2025-01-03信息学奥赛一本通1100金币(C语言代码)
文章目录一、题目二、代码1.代码一2.代码二一、题目二、代码1.代码一#include<stdio.h>intmain(){intdays;scanf("%d",&days);intsum=0;//记录总的金币数intcountdays=1;intcoin=1;while(days>0){
- 2025-01-02题解 - 机会成本(2022.9上海月赛丙组T2)
题目描述明天有门考试,今晚只能复习一门课,请计算应该复习哪一门课,才能让所有考试的分数总和达到最大,如果选择复习第之门课,则这门课的考试分数为a;,若放弃复习第之门课,则这门考试的分数为6;。输入格式第一行:单个整数表示n第二行到第n+1行:每行两个整数表示a;
- 2025-01-02[Tricks-00007]AGC070C 什么才是真正的容斥
呜呜。这题太难受了,还不知道以怎样的方式写能把其中的巧妙思维方式解释清楚。先把做法的表象讲讲吧:考虑翻折容斥。我以为这个做不了,实际是可以的啊!把\(+1,-1,0\)分别记作A,B,X。则要求相当于,固定A,B,X分别的个数(记为\(a,b,x\)),但要求不能出现连续的AA或者BB且前缀和非
- 2025-01-02USACO2024DEC题解
P11450[USACO24DEC]FarmerJohn'sCheeseBlockB//FarmerJohn'sCheeseBlockB#include<stdio.h>#include<iostream>usingnamespacestd;intcnt_xy[1005][1005],cnt_yz[1005][1005],cnt_xz[1005][1005];intmain(){intn,q;
- 2025-01-01LeetCode 1422. Maximum Score After Splitting a String
- 2025-01-01高一上一月上旬日记
1.1闲话以为下午\(2:30\)开始进校,遂从家里出发已经比较晚了。到学校后发现是\(2:30\)在机房做好,遂直接拉着行李来机房了。晚上\(miaomiao\)说今明两天把字符串和动态规划专题收收尾。做题纪要CF601EAMuseumRobbery线段树分治。点击查看代码constllmod=1000