
算法
小步想当程序员
学习学习学习~
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
第九届蓝桥杯初赛
第九届蓝桥杯初赛1. 标题:第几天2000年的1月1日,是那一年的第1天。那么,2000年的5月4日,是那一年的第几天?解:2000年闰年31+29+31+30+4=1252. 标题:明码汉字的字形存在于字库中,即便在今天,16点阵的字库也仍然使用广泛。16点阵的字库把每个汉字看成是16x16个像素信息。并把这些信息记录在字节中。一个字节可以存储8位信息,用32个字节就可以存一个汉字的字形了。把每个字节转为2进制表示,1表示墨迹,0表示底...原创 2020-06-25 18:30:35 · 352 阅读 · 0 评论 -
poj1094
#include<stdio.h>#include<queue>#include<string.h>using namespace std;vector<int>G[50];int in[50]; int tmp[50]; // 入度备份数组 char out[50]; int topsort(int n) { bool zero...原创 2019-03-10 16:19:54 · 479 阅读 · 1 评论 -
2019省赛B组第五题--迷宫
试题 E: 迷宫 本题总分:15 分【问题描述】下图给出了一个迷宫的平面图,其中标记为 1 的为障碍,标记为 0 的为可 以通行的地方。010000000100001001110000迷宫的入口为左上角,出口为右下角,在迷宫中,只能从一个位置走到这 个它的上、下、左、右四个方向之一。 对于上面的迷宫,从入口开始,可以按DRRURRDDDR 的顺序通过迷宫, 一共 10 ...原创 2019-05-19 18:54:31 · 741 阅读 · 0 评论 -
多重部分和问题
#include<stdio.h>#include<string.h>#define max(a,b) (a>b?a:b)int dp[100][10000];int n,w;int a[100],b[100]; // a[i] 数值 b[i] 个数 int main() { memset(a,0,sizeof(a)); memset(b,0,siz...原创 2019-05-20 21:38:28 · 224 阅读 · 0 评论 -
蓝桥杯国赛--凑平方数
把0~9这10个数字,分成多个组,每个组恰好是一个平方数,这是能够办到的。 比如:0, 36, 5948721再比如: 1098524736 1, 25, 6390784 0, 4, 289, 15376 等等…注意,0可以作为独立的数字,但不能作为多位数字的开始。 分组时,必须用完所有的数字,不能重复,不能遗漏。如果不计较小组内数据的先后顺序,请问有多少种不同的分组方案?注...原创 2019-05-24 20:43:43 · 345 阅读 · 0 评论 -
蓝桥杯国赛2017瓷砖样式
现在手头有一批刚好能盖住2个小方格的长方形瓷砖。瓷砖只有两种颜色:黄色和橙色。小明想知道,对于这么简陋的原料,可以贴出多少种不同的花样来。小明有个小小的强迫症:忍受不了任何2*2的小格子是同一种颜色。(瓷砖不能切割,不能重叠,也不能只铺一部分。另外,只考虑组合图案,请忽略瓷砖的拼缝)显然,对于 2*3 个小格子来说,口算都可以知道:一共10种贴法,如【p1.png所示】但对于 3*10...原创 2019-05-22 16:20:27 · 221 阅读 · 0 评论 -
第九届蓝桥杯国赛
标题:换零钞x星球的钞票的面额只有:100元,5元,2元,1元,共4种。小明去x星旅游,他手里只有2张100元的x星币,太不方便,恰好路过x星银行就去换零钱。小明有点强迫症,他坚持要求200元换出的零钞中2元的张数刚好是1元的张数的10倍,剩下的当然都是5元面额的。银行的工作人员有点为难,你能帮助算出:在满足小明要求的前提下,最少要换给他多少张钞票吗?(5元,2元,1元面额的必...原创 2019-05-18 14:24:28 · 421 阅读 · 1 评论 -
蓝桥杯国赛--发现环
标题:发现环小明的实验室有N台电脑,编号1~N。原本这N台电脑之间有N-1条数据链接相连,恰好构成一个树形网络。在树形网络上,任意两台电脑之间有唯一的路径相连。不过在最近一次维护网络时,管理员误操作使得某两台电脑之间增加了一条数据链接,于是网络中出现了环路。环路上的电脑由于两两之间不再是只有一条路径,使得这些电脑上的数据传输出现了BUG。为了恢复正常传输。小明需要找到所有在环路上的电脑,你能...原创 2019-05-23 18:15:54 · 204 阅读 · 0 评论 -
数据结构--平衡二叉树旋转插入C语言实现
平衡二叉树旋转分为4种:LL,RR,LR,RL一、旋转1.LLAvlnode * LL(Avlnode *root) { Avlnode * k1 = root->lchild; root->lchild = k1->rchild; k1->rchild = root; k1->height = max(h(k1->lchild),h(k1...原创 2019-07-26 21:28:32 · 546 阅读 · 1 评论 -
华师夏令营机试题
1.#include<stdio.h>#include<algorithm>#include<string.h>#include<math.h>using namespace std;int n;int a[10];int b[10];int dp[100];int main() { memset(dp,0,sizeof...原创 2019-09-18 14:29:47 · 686 阅读 · 0 评论 -
算法训练 素因子去重
#include<stdio.h>using namespace std; bool prime(long long i){ for(long long k=2;k*k<=i;k++){ if(i%k==0) return false; } return true;}int main(){ long long n; scanf("%I64d",&am...原创 2019-01-31 18:30:13 · 299 阅读 · 0 评论 -
算法小计1 -- Ants (问题转化) 和 抽签问题(二分)
Ants寻找最短时间:即寻找所有蚂蚁都是最短情况下,最长的时间抽签问题 寻找k[a] + k[b] + k[c] + k[d] = m stl库含 binary_search(a,a+数组大小,寻找的值)a+b+c+d = ka b c d 都在 t[n] 数组中 方法1: (nnnlogn)三重循环 遍历 abc的值 最内层循环,二分搜素 k -a-b-c 是否在t...原创 2018-11-23 22:04:26 · 260 阅读 · 0 评论 -
java算法1:交换数组和索引的值
题目:一副从1到n的牌,每次从牌堆顶取一张放桌子上,再取一张放牌堆底,直到手上没牌,最后桌子上的牌是从1到n有序,设计程序,输入n,输出牌堆的顺序数组。(题目来源于一篇知乎上的文章)思路:在原牌堆a[n]以1到n的方式进行标记(即 a[0]=1,a[1]=2...),通过上述操作,产生新牌堆b[n]。若b[k]中的数值t+1,为原牌堆a[t]对应的位置,说明新牌堆第k+1张...原创 2018-07-04 16:50:56 · 1728 阅读 · 1 评论 -
第九届蓝桥杯省赛(6) -- 递增三元组
标题:递增三元组给定三个整数数组A = [A1, A2, ... AN], B = [B1, B2, ... BN], C = [C1, C2, ... CN],请你统计有多少个三元组(i, j, k) 满足:1. 1 <= i, j, k <= N 2. Ai < Bj < Ck 【输入格式】 第一行包含一个整数N。第二行包含N个整数A1, ...原创 2018-10-17 23:24:18 · 213 阅读 · 0 评论 -
第九届蓝桥杯省赛(2)-- 明码
标题:明码汉字的字形存在于字库中,即便在今天,16点阵的字库也仍然使用广泛。16点阵的字库把每个汉字看成是16x16个像素信息。并把这些信息记录在字节中。一个字节可以存储8位信息,用32个字节就可以存一个汉字的字形了。把每个字节转为2进制表示,1表示墨迹,0表示底色。每行2个字节,一共16行,布局是: 第1字节,第2字节 第3字节,第4字节 .... ...原创 2018-10-14 13:58:44 · 236 阅读 · 0 评论 -
第九届蓝桥杯省赛 (7) -- 螺旋折线
标题:螺旋折线如图p1.png所示的螺旋折线经过平面上所有整点恰好一次。 对于整点(X, Y),我们定义它到原点的距离dis(X, Y)是从原点到(X, Y)的螺旋折线段的长度。 例如dis(0, 1)=3, dis(-2, -1)=9 给出整点坐标(X, Y),你能计算出dis(X, Y)吗?【输入格式】X和Y 对于40%的数据,-1000 <= X, Y...原创 2018-10-18 20:39:08 · 304 阅读 · 0 评论 -
第九届蓝桥杯省赛(8) -- 日志统计
标题:日志统计小明维护着一个程序员论坛。现在他收集了一份"点赞"日志,日志共有N行。其中每一行的格式是:ts id 表示在ts时刻编号id的帖子收到一个"赞"。 现在小明想统计有哪些帖子曾经是"热帖"。如果一个帖子曾在任意一个长度为D的时间段内收到不少于K个赞,小明就认为这个帖子曾是"热帖"。 具体来说,如果存在某个时刻T满足该帖在[T, T+D)这段时间内(注意是左闭...原创 2018-10-18 23:56:58 · 265 阅读 · 0 评论 -
尺取法
题目:给定长度为n的数列整数a0,a1,a2,a3 ..... an-1以及整数S。求出综合不小于S的连续子序列的长度的最小值。如果解不存在,则输出0。 思路:尺取法,指定两个变量i,j来指定数组下标,起始位置均为0分为三步1.向右移动j变量,使a[i] 到 a[j] 的元素之和 大于等于S,注意 根据模板写的循环中,j的值需要-1才为该序列中最后数的下标。如果加到最后j=n...原创 2018-10-22 16:06:31 · 356 阅读 · 0 评论 -
第九届蓝桥杯省赛(4)-- 测试次数
4.标题:测试次数 x星球的居民脾气不太好,但好在他们生气的时候唯一的异常举动是:摔手机。各大厂商也就纷纷推出各种耐摔型手机。x星球的质监局规定了手机必须经过耐摔测试,并且评定出一个耐摔指数来,之后才允许上市流通。 x星球有很多高耸入云的高塔,刚好可以用来做耐摔测试。塔的每一层高度都是一样的,与地球上稍有不同的是,他们的第一层不是地面,而是相当于我们的2楼。 如果手机从...原创 2018-10-17 18:36:01 · 321 阅读 · 0 评论 -
第九届蓝桥杯省赛(9) -- 全球变暖
一.题目标题:全球变暖你有一张某海域NxN像素的照片,"."表示海洋、"#"表示陆地,如下所示:........##.....##........##...####....###........其中"上下左右"四个方向上连在一起的一片陆地组成一座岛屿。例如上图就有2座岛屿。 由于全球变暖导致了海面上升,科学家预测未来几十年,岛屿边缘一个像素的范围会被海水淹没。具体来...原创 2018-11-01 17:08:14 · 432 阅读 · 0 评论 -
算法 -- 全排列C语言
算法一:#include<stdio.h>void swap(int *a, int *b) { int m = *a; *a = *b; *b = m;}void perm(int a[], int k, int m) { if(k>m) { for (int i=0; i<=m;i++) { printf("%d",a[i]); } ...原创 2018-11-03 23:05:48 · 427 阅读 · 0 评论 -
java算法2:匈牙利算法的应用
一.匈牙利算法解决的问题 二分图的最大匹配数问题二.匈牙利算法的应用场景示例 一群男生与一群女生(二分图)参与相亲。你作为红娘牵线,希望通过你自己的努力,能让他们大多数人能找到终身的伴侣,当然越多越好(最大数),也能证明你的能力。当然看不对眼的不能硬凑,需要在看对眼(匹配)的情况下,帮助他们尽可能多的进行匹配。这个问题就是二分图的最大匹配数问题。 ...原创 2018-08-13 17:56:05 · 1380 阅读 · 0 评论