自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 第二周总结

临近比赛,这周写了最近的几场ccpc的题目。(节选铜牌题)秦皇岛K题:贪心,树形结构。首先令ans=一个人走完的时间,再找到派出第二个人能减少的最大时间,令ans-这个最大时间,遍历到没有这样的路经为止。秦皇岛E题:贪心,尺取。首先列出最高分可能的取值,每次尺取最高分的一段和最低分的一段(满足条件的),两段中去重,遍历到下一个在此基础上进行。绵阳J题:线段树,剪枝。比较水的一个线段树题,每次更新用线段树解决即可。绵阳L题:思维,贪心,数学。如果后面的数可以表示前面的数,那么,前面的数

2020-12-09 20:28:44 114

原创 ccpc长春场j题

J题:对于这个题目我首先考虑的是dp[L],表示x轴长度为L时的方案总数,然后状态转移时考虑L+1,但是无论如何都会产生一定的后效性。但是,只要求出以L+1点为右边界的圆的所有情况,这样就没有后效性了(不以L+1点为右边界的圆都可以在L中体现出来,所以L+1为右边界的圆是L+1状态的特有圆)而以L+1为右边界的圆只可能影响前10个点的状态,所以最多影响到L-9.所以对dp数组新增一维表示前10个点的状态,假设为j,j是一个10位的整数(1<<10),j的第i位为0或1表示第i个点是否被包含在圆

2020-12-03 20:55:12 170

原创 Codeforces Round #651 (Div. 2)个人题解(A,B,C,D,E)

A题:题意:找出1-n中任意一对数a,b的最大公约数的最大值;思路:直接找除以2的就行了,水题;#include <bits/stdc++.h>using namespace std;int main(){ int t; cin >> t; while(t--) { int n; cin >> n; if(n%2==0) cout << n/2 <<endl; else cout <<

2020-06-21 13:13:00 202

原创 Codeforces Round #649 (Div. 2)个人题解(A,B,C)

A题:题意:给你一个数组,找到一个最长数列的和不能被x整除,该数列只能由原数列从第一个开始删除,或者从最后一个开始删除(必须连续删除)。思路:直接设一个前缀和数组,循环一遍判断最大值就行了。如果全部元素都能被x整除,那就直接输出-1。#include<iostream>#include<cstdio>#include<cstdlib>#include<algorithm>#include<cmath>#define MAX 1000

2020-06-14 16:55:57 179

原创 Codeforces Round #648 (Div. 2)题解(A,B,C,D)

Codeforces Round #648 (Div. 2)题解(A,B,C,D)A题:题意:给你一个矩阵,两个人轮流进行游戏,每个人的回合都要选择一个位置(i,j),把它置为1,前提是第i行和第j列都没有1.思路:求出行和列中最小的闲置数,其就为游戏进行的次数。偶数为第二个人赢,否则为第一人赢。#include<iostream>#include<cstdio>#include<cstdlib>#include<algorithm>#incl

2020-06-08 13:57:05 190

原创 首试公司面试算法题

前几天回家姐夫给我出了三道面试题(新手难度);题目1.给定一个有序数列,求value在第一次出现的位置(数据重复度比较高)第一反应就是二分查找,然后再往前找一段。(被姐夫pass掉了,要我再优化一下);题目不难,二分思想没错,在此基础上我进一步二分,就行了(感觉自己算法题白写了,这都要想这么久);代码:(来源于姐夫);int fun(vector<int> arr,i...

2019-12-03 21:44:37 258

原创 比赛的悲惨教训

周末连续两天的比赛让我初步了解了acm比赛。首先,必须拉个人和自己一起,这样让自己更自信。比赛题目并不是很bt,主要是自己的编码能力和边界条件的判断,涉及到高阶算法的题目也就几道,若是能把较水的题都做出来,一定能拿个不错的名次。经验总结:先大致看一下题目,找到一个能够下手的,提交后(不管有没有成功),看一下榜单,看下别人都做了哪些题(那些题一般都应该是比较水的题),若手上的题目前没有思路则...

2019-05-19 22:42:16 143

原创 动态规划的简单总结

首先从斐波那契数列来看动态规划,递推公式为:f(n+2)=f(n+1)+f(n)。若普通求解f(n),则需要一直往下递推,直到f(1)和f(2)为止,但用动态规划,使用dp数组储存每个阶段的f(n),则每次f的求解都不需要循环往下计算,只需调用dp数组中n-1与n-2阶段的f值即可。 这样大大节约运行时间,动态规划也就是做这么件事。动态规划的使用场景:各阶段的最优解有一定的相关型,某...

2019-05-10 13:36:24 496

原创 排序算法总结

简单总结一下排序算法。1.插入排序插入排序是比较容易理解的一种排序算法,代码量不大,写起来十分简单,但是其效率较低。在此简单分析一下。在最好的情况下,序列原本有序,插入排序即不用做任何操作,只需将序列遍历一边,时间复杂度为O(n),在最坏情况下,要进行1+2+3+4+n次插入,时间复杂度为O(n2)。在实际问题中,序列总是杂乱的,所以其平均时间复杂度是O(n2)。(插入排序也还有许多优...

2019-03-17 14:21:18 124

原创 快速排序——基本版

快速排序主要是利用了二分的思想进行排序,时间复杂度是NlogN;算法实现:首先选出一个基准数(这里选a[0]做基准数),将比基准数小的都放到左边,大的就放到右边;此处的实现我利用两个哨兵i、j,i从数组的左边开始,j从数组的右边开始;当a[i]小于或等于基准数,i自加1,直到a[i]&gt;基准数,j也做同样的操作,只是改掉大小关系;等到a[i],a[j]都满足关系了,将a[i],a[...

2018-11-24 14:16:42 215

原创 数列求和—加强版 心得

**数列求和—加强版 心得** 经过前天晚上的努力与昨天早上的努力,终于解决了这一题第一次尝试:由于第一次写这种题目,不懂太多套路,直接入题。用a10n次方+a(n-1)次方累加算出结果,用int型输出。结果死的很惨。第二次尝试:发现用上述算法计算效率不高,将算法进行改进;算法如下:9 9 9 9 9 9 99 9 9 9 9 99 9 9 9 99 9 9 ...

2018-10-15 22:31:50 654

空空如也

空空如也

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

TA关注的人

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