- 博客(27)
- 收藏
- 关注
原创 E - Lucky Subsequence CodeForces - 146E(12.14训练赛补题)
原题链接题意:一个数字各个位由若干个4和若干个7组成,并且“4”的个数为a1,“7”的个数为a2,“47”的个数是a3,“74”的个数是a4。我们要做的就是找到这个数,找不到就输出-1;思路:...
2020-12-16 15:05:44 131
原创 2020天梯赛L2-3 完全二叉树的层序遍历
一个二叉树,如果每一个层的结点数都达到最大值,则这个二叉树就是完美二叉树。对于深度为 D 的,有 N 个结点的二叉树,若其结点对应于相同深度完美二叉树的层序遍历的前 N 个结点,这样的树就是完全二叉树。给定一棵完全二叉树的后序遍历,请你给出这棵树的层序遍历结果。输入格式:输入在第一行中给出正整数 N(≤30),即树中结点个数。第二行给出后序遍历序列,为 N 个不超过 100 的正整数。同一行中所有数字都以空格分隔。输出格式:在一行中输出该树的层序遍历序列。所有数字都以 1 个空格分隔,行首尾不得有
2020-12-06 22:30:05 295
原创 2020-10-25
7-9#include<bits/stdc++.h>#define vint vector<int>#define vstr vector<string>#define vll vector<long long>#define ll long long#define ull unsigned long long#define pf printf#define sf scanf#define sfd(n) scanf("%d", &n
2020-10-25 23:53:27 124 1
原创 2020-10-18
#include<bits/stdc++.h>#define vint vector<int>#define vstr vector<string>#define vll vector<long long>#define ll long long#define pf printf#define sf scanf#define sfd(n) scanf("%d", &n)#define sflf(n) scanf("%lf", &
2020-10-18 21:08:56 74
原创 2020-10-11
10.04补题报告7-9#include<bits/stdc++.h>#define vint vector<int>#define vstr vector<string>#define vll vector<long long>#define ll long long#define ull unsigned long long#define pf printf#define sf scanf#define sfd(n) scanf("%
2020-10-11 22:33:36 89
原创 2019牛客国庆集训派对day7 A 2016
原题题意:给出正整数 n 和 m,统计满足以下条件的正整数对 (a, b) 的数量:1≤a≤n,1≤b≤m;a×b是 2016 的倍数。思路:a*b%mod–>(a%mod * b%mod)%mod;设i=a%mod, j=b%mod(即1<=i,j<=mod,等于mod而不等于0的原因是0乘任何数都是0,然后取余的结果也是0),n里面对mod取余为i的数量是(n-i)/mod+1(+1是i本身)(PS:a%mod = i ==> a = k*mod+i,
2020-06-10 10:42:36 135
原创 算法板子整理(c++代码)
KMP算法void getNext(int* nxt, string p){ memset(nxt, -1, sizeof(nxt)); nxt[0] = -1; int i = 0,j = -1;//j控制前缀,i控制后缀 int lp = p.size(); while( i<lp ) { if( j==-1||p[i]==p[j] ){ ++i; ++j;//先自增,因为PMT向前移动一位
2020-05-14 16:07:08 318
原创 洛谷 P2615 神奇的幻方
解法一解法二我的垃圾代码#include<bits/stdc++.h>#define vint vector<int>#define vstr vector<string>#define vll vector<long long>#define ll long long#define ull unsigned long long#...
2020-05-07 08:28:57 368
原创 夹角有多大(题目已修改,注意读题) HDU - 2076 题解
原题链接#include<iostream>#include<fstream>#include<cstdio>#include<iomanip>#include<algorithm>#include<vector>#include<set>#include<list>#include&...
2019-11-27 16:05:19 107
原创 B. Christmas Spruce--题解
原题链接思路:用结构体储存这个树,向量c记录该节点的子节点,node记录叶节点的数量,遍历所有节点计算出每个节点的叶节点数量node,然后判断是否符合题目的规定,然后输出。代码:#include<iostream>#include<fstream>#include<cstdio>#include<iomanip>#include<...
2019-11-24 18:46:20 173
原创 Max Sum HDU - 1003题解
原题链接思路:题目要求对一个序列num求其子序列最大和。因为序列元素的范围是[-1000, 1000],所以最大值max求法为:sum对num遍历求和,每加一个就对sum和max比较,如果sum大于max,就更新max及对应子序列两端的位置,beg记录起点,end记录末尾;pre记录sum所对应的子序列的起始位置,如果sum小于零,将sum置零,pre指向下一个。(这一步是因为我们求得是...
2019-11-02 12:23:45 322
原创 洛谷P1042 乒乓球
原题链接思路:用数组 W_11[i], L_11[i],W_21[j] , L_21[j] 去记录分数,但两人的比分满足条件,i或j+1;代码:#include<iostream>#include<cstdio>#include<iomanip>#include<algorithm>#include<vector>#in...
2019-09-30 00:09:10 150
原创 洛谷P1031 均分纸牌
原题链接思路:0.根据题意,移牌规则为:在编号为1堆上取的纸牌,只能移到编号为2的堆上;在编号为N的堆上取的纸牌,只能移到编号为N−1的堆上;其他堆上取的纸牌,可以移到相邻左边或右边的堆上。所以,第一堆牌p处理方法只有三种:p等于平均值,不需要任何处理;p小于平均值,它只能从第二堆牌中取合适数目的牌使p等于平均值;p大于平均值,它只能把多余的牌放到第二堆牌中;无论哪一种,p都...
2019-09-27 23:10:46 123
原创 洛谷P1563 玩具谜题
原题链接思路:依旧是很简单的模拟,不过这题有点绕,需要注意以下几点:“小南发现, 这个谜题中玩具小人的朝向非常关键, 因为朝内和朝外的玩具小人的左右方向是相反的: 面朝圈内的玩具小人, 它的左边是顺时针方向, 右边是逆时针方向; 而面向圈外的玩具小人, 它的左边是逆时针方向, 右边是顺时针方向。”“每行包含一个整数和一个字符串,以逆时针为顺序给出每个玩具小人的朝向和职业。其中0表示朝向圈...
2019-09-25 21:39:37 232 1
原创 洛谷P1328 生活大爆炸版石头剪刀布
原题链接思路:甲对乙胜负情况表:012340平输赢赢输1赢平输赢输2输赢平输赢3输输赢平赢4赢赢输输平在完成对题目要求的输入之后,我的思路是把A和B所有的出拳情况存到两个string中即str1、str2,然后遍历str1,对str2判断,计算得分。int main() { int...
2019-09-23 21:34:24 118
原创 AtCoder - 4822 - Alchemist
原题链接思路分析:根据题意,是输入一个整数数组,求其中任意两个数的平均数average,然后将这个average与另一个数组中的数求一个新的平均数,重复操作直到所有数都操作过,求这个操作过程可以得到的最大数。例如:我看到题第一眼就想用递归,可惜自己太菜了,没学好,当时没写好,就一直错,后来我问了同学之后,改了一个错误,但是提交超时了,然后我就放弃了。下面就说一个特别特别简单的解法,思路如下...
2019-09-23 21:20:52 251
原创 洛谷P1540 机器翻译
原题链接思路:这是一到很简单的题,根据题目中说的“假设内存中有M个单元,每单元能存放一个单词和译义。每当软件将一个新单词存入内存前,如果当前内存中已存入的单词数不超过M−1,软件会将新单词存入一个未使用的内存单元;若内存中已存入M个单词,软件会清空最早进入内存的那个单词,腾出单元来,存放新单词。”就很容易想到这是队列,然后有涉及到遍历数据,所以我选择deque;0.在输入N个非负整数num时...
2019-09-11 16:07:00 212
原创 洛谷 P1067 多项式输出
原题链接思路:这道题其实简单,就是非常麻烦;我想的是,因为1和0的特殊,所以输出的多项式分成三个部分a1…an对于n,当n==0时直接输出系数coefficient。当n>0时,输入的第一项正数不用加“+”,且“1”“-1”不输出1;中间的那几项正数要加“+”,“1”“-1”不输出1,且项的次数为1时不输出;最后一项正数要加“+”。所有项系数coefficient为0...
2019-09-09 22:13:51 115
原创 洛谷P1003 铺地毯
原题链接思路:这题是在模拟的关卡里,我网上找了半天对模拟还不是很理解,我觉得说的好点的就是这个:在自然界和日常生活中,许多现象具有不确定的性质,有些问题甚至很难建立数学模型,或者很难用计算机建立递推、递归、枚举、回溯法等算法。在这种情况下,一般采用模拟策略。所谓模拟策略就是模拟某个过程,通过改变数学模型的各种参数,进而观察变更这些参数所引起的过程状态的变化,由此展开算法设计。这题...
2019-09-08 17:42:56 120
原创 Fibonacci Again HDU-1021
原题:https://cn.vjudge.net/problem/HDU-1021本来是非常简单的,我原来的思路就是把从0到1 000 000F(n)计算出来然后存起来,然后在判断是否可以被3整除。#include<iostream>#include<cstdio>#include<iomanip>#include<algorithm>#...
2019-08-19 14:31:51 233
原创 SDUT 1200 汉诺塔
原题链接:https://acm.sdut.edu.cn/onlinejudge2/index.php/Home/Index/problemdetail/pid/1200.html题目描述:解题思路:0.为了将所有金片都从A移动到C,1.当n=1时,只需要将1从A移动到C;当n=2时,需要将代码:#include<iostream>#include<cstdio&...
2019-08-13 17:09:27 256
原创 洛谷P1618 三连击(升级版)
原题链接:https://www.luogu.org/problemnew/show/P1618题目大意:1~9九个数字,组成三个三位数,这三个数满足:每个数字只能使用一次;三个数之间满足A:B:C的关系,且A<B<C;输入A、B、C;输出所有满足条件的三个三位数,占一行;思路:1)A最小为1,最小比例为1:2:3,而且满足条件一的最大数是987,最小数是123,所...
2019-08-13 10:47:16 80
原创 2019年山东省赛C题
原题:https://vjudge.net/contest/303617?tdsourcetag=s_pcqq_aiomsg#problem/C题目大意:一个点(x,y)在坐标轴上按如下规则移动(默认最初点为(0,0):“U”向上移动一个单位;“D”向下移动一个单位;“R”向右移动一个单位;“L”向左移动一个单位;输入:第一行是整数T,有T组样例;每组样例中,第一行是整数n、...
2019-08-13 10:38:31 152
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人