凯撒袁六兽的blog

9102年初入大一计算机系
私信 关注
凯撒袁六兽
码龄1年

9102年初入林大大一计算机系

  • 4,158
    被访问量
  • 48
    原创文章
  • 197,207
    作者排名
  • 17
    粉丝数量
  • 毕业院校 东北林业大学
  • 于 2019-11-24 加入CSDN
获得成就
  • 获得20次点赞
  • 内容获得7次评论
  • 获得10次收藏
荣誉勋章
TA的专栏
  • 备战蓝桥杯
    15篇
  • java学习笔记
    4篇
  • 题解
    8篇
  • ACM算法
    17篇
  • C语言
    5篇
  • 最近
  • 文章
  • 资源
  • 问答
  • 课程
  • 帖子
  • 收藏
  • 关注/订阅

[蓝桥杯2018初赛]全球变暖BFS

全球变暖这个题简直太阴间了,不过也重新让我认识了BFS错误的写法在数据量大的时候也会进入死循环题目描述你有一张某海域NxN像素的照片,".“表示海洋、”#"表示陆地,如下所示:….##….##……##.…####.…###.…其中"上下左右"四个方向上连在一起的一片陆地组成一座岛屿。例如上图就有2座岛屿。由于全球变暖导致了海面上升,科学家预测未来几十年,岛屿边缘一个像素的范围会被海水淹没。具体来说如果一块陆地像素与海洋相邻(上下左右四个相邻像素中有海洋),它就会被淹没。例如上图
原创
14阅读
0评论
0点赞
发布博客于 19 天前

[蓝桥杯2018初赛]航班时间

航班时间题目描述小h前往美国参加了蓝桥杯国际赛。小h的女朋友发现小h上午十点出发,上午十二点到达美国,于是感叹到“现在飞机飞得真快,两小时就能到美国了”。小h对超音速飞行感到十分恐惧。仔细观察后发现飞机的起降时间都是当地时间。由于北京和美国东部有12小时时差,故飞机总共需要14小时的飞行时间。不久后小h的女朋友去中东交换。小h并不知道中东与北京的时差。但是小h得到了女朋友来回航班的起降时间。小h想知道女朋友的航班飞行时间是多少。对于一个可能跨时区的航班,给定来回程的起降时间。假设飞机来回飞行时间
原创
15阅读
0评论
0点赞
发布博客于 20 天前

Ideal学生免费激活安装及汉化

在群里听大佬们说正经人都用Ideal写Java,于是我也去搞了一个学生免费版用一用。文章目录教育版激活Ideal安装汉化教育版激活第一步:Ideal的官网上找到教育认证https://www.jetbrains.com/第二步:找到教育版本申请页面第二步:点进去页面后进行申请邮箱只要用含有@学校缩写.edu.cn就可以,需要在所在学校申请一个教育邮箱,例如东北林业大学的教育邮箱:XXX@nefu.edu.cn第三步:在教育邮箱里按照官网给你发的邮箱同意,注册账号就行,如果5分钟之内没.
原创
53阅读
2评论
1点赞
发布博客于 23 天前

[蓝桥杯2018初赛]第几个幸运数

第几个幸运数题目描述到x星球旅行的游客都被发给一个整数,作为游客编号。x星的国王有个怪癖,他只喜欢数字3,5和7。国王规定,游客的编号如果只含有因子:3,5,7,就可以获得一份奖品。前10个幸运数字是:3 5 7 9 15 21 25 27 35 45,因而第11个幸运数字是:49小明领到了一个幸运数字 59084709587505。去领奖的时候,人家要求他准确说出这是第几个幸运数字,否则领不到奖品。请你帮小明计算一下,59084709587505是第几个幸运数字。输出输出一个整数表示
原创
17阅读
0评论
0点赞
发布博客于 1 月前

[蓝桥杯2018初赛]乘积尾零

乘积尾零题目描述如下的10行数据,每行有10个整数,请你求出它们的乘积的末尾有多少个零?5650 4542 3554 473 946 4114 3871 9073 90 43292758 7949 6113 5659 5245 7432 3051 4434 6704 35949937 1173 6866 3397 4759 7557 3070 2287 1453 98991486 5722 3135 1170 4014 5510 5120 729 2880 90192049 698 4582
原创
12阅读
0评论
0点赞
发布博客于 1 月前

[蓝桥杯2018初赛]星期一

题目描述整个20世纪(1901年1月1日至2000年12月31日之间),一共有多少个星期一?(不要告诉我你不知道今天是星期几)输出输出一个整数表示答案思路:这个题比较抽象,我一开始从月份的角度去考虑,结果就是60多行的if和for而且还会算错,不应该考虑那么细致,只需要用年来考虑,闰年是366天,非闰年是365天,然后除以7是这一年的星期一的天数,对7取余是还剩下多少天,然后把所有的对7取余的数相加再除以7,就是每一年多出来的天数能够组成的星期一的个数。#include <bits/s.
原创
14阅读
0评论
0点赞
发布博客于 1 月前

[蓝桥杯2018初赛]分数

题目描述1/1 + 1/2 + 1/4 + 1/8 + 1/16 + …每项是前一项的一半,如果一共有20项,求这个和是多少,结果用分数表示出来。类似:3/2当然,这只是加了前2项而已。分子分母要求互质。输出按格式输出答案思路:用等比数列求和公式得到2-(1/2)^19,然后通分以后再看分子分母gcd,如果分子分母的最大公约数是1,则不用约分,如果不是就需要约分。#include <bits/stdc++.h>using namespace std;long long a,.
原创
15阅读
0评论
0点赞
发布博客于 1 月前

[蓝桥杯2019初赛]修改数组

修改数组题目描述给定一个长度为N 的数组A = [A1, A2,…,AN],数组中有可能有重复出现的整数。现在小明要按以下方法将其修改为没有重复整数的数组。小明会依次修改A2,A3,…, AN。当修改Ai 时,小明会检查Ai 是否在A1~ Ai-1 中出现过。如果出现过,则小明会给Ai 加上1 ;如果新的Ai 仍在之前出现过,小明会持续给Ai 加1 ,直到Ai 没有在A1~Ai-1中出现过。当AN 也经过上述修改之后,显然A数组中就没有重复的整数了。现在给定初始的A 数组,请你计算出最终的
原创
10阅读
0评论
0点赞
发布博客于 1 月前

[蓝桥杯2019初赛]组队

组队思路:这个题人比较抽象少看了一行,WA了两发,要是考场就完了,一定别看错,就选每个位置的最大得数字就行。#include <bits/stdc++.h>using namespace std;int ans;int main(){ ans=99*2+97*2+98; cout<<ans; return 0;}...
原创
41阅读
0评论
0点赞
发布博客于 1 月前

[蓝桥杯2019初赛]求和

求和小明对数位中含有2、0、1、9 的数字很感兴趣在1 到40 中这样的数包括1、2、9、10 至32、39 和40,共28 个,他们的和是574。请问,在1 到2019 中,所有这样的数的和是多少?思路:三个for循环,由于不能重复,则i=1,j=i+1,k=j+1,然后取位数,判有没有2和4,有没有相等就行#include <bits/stdc++.h>using namespace std;int n=2019;bool judge(int x){ while
原创
21阅读
0评论
0点赞
发布博客于 1 月前

[蓝桥杯2019初赛]外卖店优先级

外卖店优先级“饱了么”外卖系统中维护着N 家外卖店,编号1~N。每家外卖店都有一个优先级,初始时(0 时刻) 优先级都为0。每经过1 个时间单位,如果外卖店没有订单,则优先级会减少1,最低减到0;而如果外卖店有订单,则优先级不减反加,每有一单优先级加2。如果某家外卖店某时刻优先级大于5,则会被系统加入优先缓存中;如果优先级小于等于3,则会被清除出优先缓存。给定T 时刻以内的M 条订单信息,请你计算T 时刻时有多少外卖店在优先缓存中。输入第一行包含3 个整数N、M 和T。以下M 行每行包
原创
33阅读
0评论
0点赞
发布博客于 1 月前

[蓝桥杯2019初赛]完全二叉树的权值

完全二叉树的权值给定一棵包含N 个节点的完全二叉树,树上每个节点都有一个权值,按从上到下、从左到右的顺序依次是A1, A2, AN,如下图所示:现在小明要把相同深度的节点的权值加在一起,他想知道哪个深度的节点权值之和最大?如果有多个深度的权值和同为最大,请你输出其中最小的深度。注:根的深度是1。输入第一行包含一个整数N。第二行包含N 个整数A1, A2, AN对于所有评测用例,1<=N<=100000, -100000<=Ai<=100000。输出输出一个整
原创
17阅读
0评论
0点赞
发布博客于 1 月前

[蓝桥杯2019初赛]迷宫

迷宫下图给出了一个迷宫的平面图,其中标记为1 的为障碍,标记为0 的为可以通行的地方。010000000100001001110000迷宫的入口为左上角,出口为右下角,在迷宫中,只能从一个位置走到这个它的上、下、左、右四个方向之一。对于上面的迷宫,从入口开始,可以按DRRURRDDDR 的顺序通过迷宫,一共10 步。其中D、U、L、R 分别表示向下、向上、向左、向右走。对于下面这个更复杂的迷宫(30 行50 列),请找出一种通过迷宫的方式,其使用的步数最少,在步数最少的前提下,请找
原创
25阅读
0评论
0点赞
发布博客于 1 月前

[蓝桥杯2019初赛]最大降雨量

最大降雨量由于沙之国长年干旱,法师小明准备施展自己的一个神秘法术来求雨。这个法术需要用到他手中的49 张法术符,上面分别写着1 至49 这49 个数字。法术一共持续7 周,每天小明都要使用一张法术符,法术符不能重复使用。每周,小明施展法术产生的能量为这周7 张法术符上数字的中位数。法术施展完7 周后,求雨将获得成功,降雨量为7 周能量的中位数。由于干旱太久,小明希望这次求雨的降雨量尽可能大,请大最大值是多少?思路:这个题一开始看到它必是贪心,中位数就是从小到大排列的数组中,其中有一半比中位
原创
12阅读
0评论
0点赞
发布博客于 2 月前

[蓝桥杯2019初赛]数列求值

数列求值给定数列1, 1, 1, 3, 5, 9, 17, …,从第4 项开始,每项都是前3 项的和。求第20190324 项的最后4 位数字。思路:这个开long long,unsigned long long必爆,题目只要4位,也就是说4位以上的都没用,那么实际在运算的时候也是4位在算,那每一个数都对10000取余再相加就行,我用了一个滚动数组,用递推或者递归(大概)都行。#include <bits/stdc++.h>using namespace std;unsigned
原创
25阅读
0评论
0点赞
发布博客于 2 月前

[蓝桥杯2019初赛]平方和

平方和小明对数位中含有2、0、1、9 的数字很感兴趣,在1 到40 中这样的数包括1、2、9、10 至32、39 和40,共28 个,他们的和是574,平方和是14362。注意,平方和是指将每个数分别平方后求和。请问,在1 到2019 中,所有这样的数的平方和是多少?思路:一开始当然要乱搞一搞个数,和,还有平方和的关系啦,然后发现没有关系。然后开始暴力了,把每一位取出来看看,有一位符合就直接加平方还有直接退出下一个,这里可以直接用while来找位数,或者用log10(x)+1来算位数。#in
原创
24阅读
0评论
0点赞
发布博客于 2 月前

Codeforces Round #698 (Div. 2)(A-C)

菜鸡又开始卑微上分了,然而昨天的体验属实不太快乐,先是桶排写错范围,又是无情Debug一个小时,希望往后的复健运动能阳间一点。A.Nezzar and Colorful Balls思路:桶排求出重复最多的值就可以了。#include <bits/stdc++.h>using namespace std;const int N=105;int a[N];int main(){ int t,n; cin>>t; for(int i=0;i<.
原创
31阅读
0评论
0点赞
发布博客于 2 月前

从零开始学Java-继承,接口,多态

面向对象编程的ava与面向过程的C语言最大的不同的引用了对象的概念,而具有相同方法(函数)的类可以抽象为一个父类,由其他的子类通过继承来获得与父类相同的方法,而在这个过程中,产生了子类的方法覆盖和多父类继承的问题(这种继承方法不存在 ),因此Java语言发明了接口和多态来解决。继承一提到继承,其实直接上继承树就会一目了然了,这也侧面印证了我校为什么要先学数据结构再学java的原因,继承通俗的来说是一个过程,通过继承,子类可以拥有父类的实际变量与方法函数,并且可以通过覆盖的的方式去在子类中定义与父类方.
原创
8阅读
1评论
0点赞
发布博客于 2 月前

从零开始学java-用不同的方法写循环

在C语言当中写循环的方法无非三种:while循环,For循环,do-while循环,但是在java也有这三种循环,但是对于java来说for循环的写法却不止一种,Head First Java中称为“加强版的for循环”(好中二的名字 )while循环:while循环的写法仍然是while(判断条件为真)的写法:即先判断条件,在执行while内语句。 int x=0; while(x<6){ System.out.println("Goo.
原创
57阅读
0评论
0点赞
发布博客于 2 月前

从零开始学Java-数组的创建及遍历

前言:众所周知,Java是一门面向对象编程的语言,在这个专题中,我不会过多的介绍Java的相关概念,而是专注于在其他语言中可以实现的东西在Java中如何实现,例如如何写一个循环,一个函数,等等。...
原创
11阅读
0评论
0点赞
发布博客于 2 月前

树与图的存储方法(邻接矩阵和前式链向星)

树与图的存储方法一般有两种:邻接矩阵邻接表其中邻接矩阵适合存储稠密图,邻接表适合存储稀疏图。邻接矩阵:邻接矩阵是表示顶点之间相邻关系的矩阵,若一个图G有n个节点,那么邻接矩阵A的大小则为n×n,其中定义,若有一点u到v之间有边,则A[u][v]=1,否则为0。所以邻接矩阵就是一个二维数组,其中下标u,v表示u到v的边,二维数组位于u行v列的值表示存不存在从u到v的边,如果有就为1,没有就为0。邻接表:邻接表的本质是n个单链表,看了网上的博客觉得讲的都不是人听的话(一定是我太菜了 )。邻
原创
68阅读
1评论
0点赞
发布博客于 2 月前

第15届东北林业大学校赛(补题)

PA:小林找工作思路:找到比
原创
87阅读
0评论
0点赞
发布博客于 3 月前

网络流(入门)-概念

相关概念介绍:这里的相关概念引用的是yxc大佬的讲解,在这里特别感谢yxc大佬的算法课,让我入了算法竞赛的门。1.1:流网络:G=(V,E)特点:是一个有向图,且可以有环,不考虑反向边(即使有反向边,也可以通过加点来把一条反向边,变成两条单向边)。组成:源点,容量,汇点。源点可以认为是起点,类比与水库,可以源源不断地向外输水。容量可以理解为离散数学的边权,类比与流速即单位时间内流过的最大的水量的大小。如果边不存在则认为容量是0。汇点可以认为是终点,类比与大海,从水库里流出来的水,会源源不断
原创
66阅读
2评论
1点赞
发布博客于 3 月前

Codeforce 483B-B - Friends and Presents 题解

原题链接:http://codeforces.com/problemset/problem/483/B题意:找一个区间,区间中的数字存在个数为cnt1的一部分满足不能被x整除,存在个数为cnt2的一部分满足不能被y整除,并且属于cnt1的一部分和属于cnt2的一部分是互斥的。思路:先放一张图:这个题让我意识到离散数学才是真正的核心课程(数据结构 ),首先从1开始到V的区间中,能被x整除的个数是V/x(向下取整),能被y整除的个数是V/y(向下取整),假设答案的范围是v,那么F1表示可以被x整除的个数
原创
49阅读
0评论
0点赞
发布博客于 3 月前

高精度算法(加减乘除)

在遇到一些例如1e^100000这样的数据的时候,我们无法处理,那么我们需要高精度来处理,用long long都没有办法处理,利用高精度处理方法是用字符串的手法处理。高精度加法:思路:就是我们人类的加法,从最小位数开始,先算好以后再进行进位操作即可,考虑进位的问题。#include<bits/stdc++.h>using namespace std;const int N=1e6+10;vector<int>A,B;string a,b;vector<int&
原创
53阅读
0评论
0点赞
发布博客于 4 月前
排序——归并排序
发布Blink于 4 月前

Noip—p1309 瑞士轮

题目描述:洛谷p1309瑞士轮题目描述放在链接里,忘记题目描述的同学可以回去复习一下嗷。思路 看了好多题解,都是硬往归并排序上靠,但是为什么是归并排序呢,看了好多篇文章都没有看懂,直到我手动的去模拟了一次,所以这道题它并不是单纯的归并排序,而是模拟归并排序(如果不会归并排序的小伙伴,可以看一下我的博客归并排序)。为什么这么说呢?因为每进行一场比赛,都要根据选手实力分出胜者组和败者组,然后我们再将胜者组和败者组根据分数大小来排成新的序列,依次类推。是不是突然感觉像归并排序中的先二分分裂,再回溯合并的过程,二
原创
29阅读
0评论
0点赞
发布博客于 4 月前

排序——归并排序

定义: 归并排序(Merge Sort)是建立在归并操作上的一种有效,稳定的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。思想: 先将一个元素个数为n的随机序列进行有限次的分割,每分割一次便得到一个新的序列单元,那么进行有限次的分割以后,则得到n个长度为1的序列单元,相当于将这n个元素分割成一个一个元素,那么在这最小的序列单元中,当前
原创
39阅读
0评论
1点赞
发布博客于 4 月前

并查集-最小生成树,带权并查集,种类并查集。

并查集:一:并查集的定义二:并查集的过程以及基本操作三:并查集的应用:对于定义的使用——判断图是否是树最小生成树问题四:相应的题目并查集的定义: 并查集是一种树型的数据结构,用于动态处理一些不相交集合(Disjoint Sets)的合并及查询问题。并查集的过程以及基本操作:过程: 运用并查集的过程就是先将每一个元素看成一个独立的集合,这个时候每一个集合的标识,再将不同的元素(集合)两两合并到一个集合当中,这就是并查集的合并,在合并的过程中这两个元素就连接在一起了,其中一个元素变成儿子
原创
170阅读
1评论
3点赞
发布博客于 7 月前
高效的遍历方法---尺取法
发布Blink于 9 月前

高效的遍历方法---尺取法

尺取法本质: 尺取法的本质实际上是一种高效模拟,它其实也是一种暴力枚举的方法,但是这种枚举更加的高效。过程: 通过两个指针l,r的移动,去不断地截取满足自己条件的区间,首先是是右指针的移动,移动到初步所满足的区间内,右指针保持不动,移动左指针进行判断,这个时候出现两种判断结果,第一种是这种左移是符合条件的,那么保持右指针不变,左指针继续向左移动;第二种是这种左移是不符合条件的,那么继续右指针的移动,直到符合条件位置。不断重复这种过程,最后完成所有的遍历。放一张图出来,聪明的你应该就能看懂了。何时选
原创
248阅读
0评论
3点赞
发布博客于 9 月前
单链表的各种基本使用方法
发布Blink于 9 月前

单链表的各种基本使用方法

单项链表的一些基础使用方法包括:创造单链表,其中含有两种创造方法:头插法和尾插法输出单链表在单链表中查找某个节点在单链表中插入新的节点在链表中删除一个节点或者多个某个内容相同的节点对单链表进行排序创造一个有序的单链表主函数中的引用那么接下来我们逐个解析:大前提是用结构体作为节点,结构体中包含节点的内容和指向下一个节点的地址typedef struct node{ int date; struct node *next;}Lnode,*Linked;1.创造单
原创
190阅读
0评论
1点赞
发布博客于 10 月前

Noip-P1219八皇后Checker Challenge

题目描述 :一个如下的6x6的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行、每列有且只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子。上面的布局可以用序列 2 4 6 1 3 5 来描述,第 iii 个数字表示在第 iii 行的相应位置有一个棋子,如下:行号 1 2 3 4 5 6列号 2 4 6 1 3 5这只是棋子放置的一个解。请编一个程序找出所有棋子放置的解...
原创
57阅读
0评论
0点赞
发布博客于 10 月前
运用二级指针与动态数组对字符串进行排序
发布Blink于 10 月前

运用二级指针与动态数组对字符串进行排序

Describe:思路: 根据题目要求首先我们需要申请动态数组,其次需要一个对字符串进行排序的函数,最后我们需要输出这些字符串。其中我们用到处理字符串的函数例如:strcmp,strcpy等等,这里我们用strcmp举例子:strcmp函数的原型是这样的:extern int strcmp(const char *s1,const char *s2);所以我们不难发现这个函数原来的参数...
原创
155阅读
0评论
0点赞
发布博客于 10 月前

三种排序方法:冒泡排序,选择排序,sort()函数排序

三种
原创
322阅读
0评论
2点赞
发布博客于 10 月前
链表-单向链表
发布Blink于 11 月前

链表-单向链表

链表引言:首先我们要知道什么是链表?百度百科中对链表的定义为:链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。其次要了解链表的创造,输出,插入,删去等操作。(本篇文章仅讨论单向链表)单向链表引言:顾名思义单项链表就是只有一个方向由首节点指向尾节点的链表,可以...
原创
131阅读
0评论
2点赞
发布博客于 11 月前
大数乘法-字符串相乘
发布Blink于 1 年前

大数乘法-字符串相乘

字符串乘法引言: 有一些很大的数字相乘,乘出来的数字可能会超过我们所学的任意基本类型的范围,这个时候我们就可以用字符串去处理它,把它存放在字符串中。思路:1.暴力解决:直接把每一位拿出来乘,乘完再相加。2.运用乘法原理:每一位的数字乘出来以后,再在相应的位上相加,最后再进位,将数组输出即可。不难发现其中的关系,第一个是乘出来的数在数组中的位置等于两个原数组的下标和,第二个是在乘的时候是从...
原创
86阅读
0评论
0点赞
发布博客于 1 年前

STL容器-Vector(三)

介绍:1.vector直接翻译为“向量”,一般说成“变长数组”,也即“长度根据需要而自动改变的数组。2.在竞赛中,有些题目需要定义很大的数组,这样会出现“超出内存限制”的错误。比如,如果一个图的顶点太多,使用邻接矩阵就会超出内存限制,使用指针实现邻接表又很容易出错,而使用vector实现简洁方便,还可以节省存储空间。如何使用vector:1.添加vector头文件,即#include &l...
原创
39阅读
0评论
1点赞
发布博客于 1 年前
STL容器-Map and Pair(一)
发布Blink于 1 年前
STL容器-Set(二)
发布Blink于 1 年前

STL容器-Set(二)

介绍:1.set 翻译为集合,是一个内部自动有序且不含重复元素的容器。2.既然set是一个集合,那么set 中的元素是唯一的,满足集合元素的互异性,其内部采用“红黑树”实现。使用方法:1.添加头文件: #include < set >2.必须要有“using namespacestd”3.定义一个set:set< typename > name;其中type...
原创
54阅读
0评论
1点赞
发布博客于 1 年前

STL容器-Map and Pair(一)

map介绍:1.map翻译为映射,是STL中的常用容器也是STL的一个关联容器,它提供一对一的数据处理能力。什么是一对一的数据处理能力呢,像我们查字典,我们可以从开头处找到这个单词对应的页数,从而通过页数找到单词,那么页数-单词就形成了一 一对应的关系。2.一维map的定义为map< typename1,typename2 > name,其中,typename1是映射前的类型(...
原创
64阅读
0评论
0点赞
发布博客于 1 年前
求一个数的因子和:唯一分解定理
发布Blink于 1 年前

求一个数的因子和:唯一分解定理

原理:唯一分解定理:任何一个大于1的自然数 N,如果N不为质数,那么N可以唯一分解成有限个质数的乘积N等于P1的a1次方乘以P2的a2次方一直乘到Pn的an次方,这里P1<P2<P3…<Pn均为质数,其中指数ai是正整数。因此我们可以用等比数列求和公式去简化求个过程:思路:我们先找出N的素因子,再让N不断地除以这个素因子,直到除不动为止说明这个素因子的取完了,再进行下一个素...
原创
112阅读
0评论
1点赞
发布博客于 1 年前

素数筛的三种写法

素数筛思路:利用桶排序将范围的数都先标记为1,然后通过计算素数的倍数把和数计算出来,然后将和数标记为0。时间复杂度:n*lgn优点:思路清晰,容易手写。缺点:是三种写法里最慢的一种。#include <bits/stdc++.h>using namespace std;const int N=1e7+10;int prime[N];//prime数组储存:素数bool...
原创
66阅读
0评论
1点赞
发布博客于 1 年前

洛谷NoipP1149火柴棒等式

PS:思路与代码在文章靠后的位置。描述:给你n根火柴棍,你可以拼出多少个形如“A+B=CA+B=CA+B=C”的等式?等式中的AAA、BBB、CCC是用火柴棍拼出的整数(若该数非零,则最高位不能是000)。用火柴棍拼数字0−90-90−9的拼法如图所示:注意:1.加号与等号各自需要两根火柴棍2.如果A≠BA≠BA​=B,则A+B=CA+B=CA+B=C与B+A=CB+A=CB+A=C视...
原创
417阅读
0评论
0点赞
发布博客于 1 年前

洛谷noipP1308统计单词数

PS:解题思路与代码在后面,可以直接往后拉。描述:一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次数。现在,请你编程实现这一功能,具体要求是:给定一个单词,请你输出它在给定的文章中出现的次数和第一次出现的位置。注意:匹配单词时,不区分大小写,但要求完全匹配,即给定单词必须与文章中的某一独立单词在不区分大小写的情况下完全相同(...
原创
38阅读
0评论
1点赞
发布博客于 1 年前
LCM与快速取模运算模板
发布Blink于 1 年前

LCM与快速取模运算模板

LCM与快速取模运算模板一. LCM取最小公倍数模板。公式:两数a,b的最小公倍数等于两数相乘除以两数的最大公倍数。代码:#include<bits/stdc++.h>using namespace std;int lcm(int a,int b){ int ans; ans=a/__gcd(a,b)*b; return ans;}int ma...
原创
209阅读
0评论
0点赞
发布博客于 1 年前
搜索初步—二进制枚举
发布Blink于 1 年前

四糸乃买花-二进制枚举

四糸乃买花Despriton:商店里有n朵花,四糸乃有w元钱。n朵花各不相同,四糸乃要买这n朵花其中的其中的若干朵。由于四糸乃很喜欢4这个数字,所以她希望她买的花的朵数是4的倍数,并且买完花后剩下的钱(可以为0)也是4的倍数。此外,因为已经来到花店了,所以四糸乃不能一朵花也不买。因为花店接下来还要做生意,四糸乃也不能将这n朵花全部买走。那么四糸乃一共有多少种买花方案呢?Input:单组输入...
原创
68阅读
0评论
1点赞
发布博客于 1 年前

搜索初步—二进制枚举

二进制枚举初步1. 过程:枚举是将所有的可能性举出,然后根据自身的条件,将符合自己目标的可能性筛出的过程,将所有可能性举出的方法有很多,二进制枚举是运用二进制位运算将所有可能性举出的过程。2.实质:是通过二进制运算,将已有数据进行有限次的排列组合的过程,用于解决几种或多种情况组合的问题。3.模板代码(我现在还没有办法解释原因,但我迟早会回来修正的!!!)一共有n个数字,从中选组若干个数...
原创
73阅读
0评论
0点赞
发布博客于 1 年前
搜索初步-暴力枚举总结与举例
发布Blink于 1 年前

搜索初步-暴力枚举总结与举例

暴力枚举一.过程:暴力枚举是将所有情况都进行枚举出,并找到自己的目标的值的过程。二.方法:1.用多重循环嵌套,用来寻找在一个数组中的一个值是否与其他的一个或多个值相关。(这里的相关表示为加减乘除等数学关系)2.用单层循环嵌套,将某个特殊数值类型在一个范围内的表打出,例如素数表,回文数表,丑数表等;或者统计某个数值类型出现的次数。三.举例1.丑数Description:只有质数2...
原创
83阅读
0评论
0点赞
发布博客于 1 年前
排序初步-桶排序与桶排序举例
发布Blink于 1 年前

排序初步-桶排序与桶排序举例

桶排序1. 过程与实质:过程: 定义一个长度比最大输入值大的数组且该数组的每个元素都为零,将数组的每个元素看作铁桶,将输入的值看作旗子,然后对应该输入值的位置的数组元素自增一,当结束输入后,遍历整个数组便可以得到每个桶里的旗子数,即每个数值出现的次数。实质: 桶排序实质是将旗子插入桶里,以便统计旗子的个数的过程。2. 优点可以实现一边输入一边统计个数,不需要先排序统计个数,时间复杂度更...
原创
70阅读
0评论
0点赞
发布博客于 1 年前
搜索初步--冒泡排序加二分法与选择排序加二分法
发布Blink于 2 年前

搜索初步--冒泡排序加二分法与选择排序加二分法

搜索初步–冒泡排序加二分法与选择排序加二分法介绍:线性搜索的方法即将数组从头到尾遍历以找到目标,但如果数据量过于庞大且目标在其中为随机存在,则会使搜索效率大大降低,因此我们可以用更加高效的方法解决该问题,即二分法搜索。本文思路:1.二分法2.冒泡排序法与选择排序法。3.冒泡排序加二分法与选择排序加二分法。(为标题而来直接往下拉)##二分法大前提:是一组从小到大的数组,类比于平面直角...
原创
96阅读
0评论
0点赞
发布博客于 2 年前