洛谷
文章平均质量分 76
洛谷的部分题目AC代码与思路
一星伴月
在沉默中努力,让成功自己发声
展开
-
1086 Tree Traversals Again (25分)
我们以这个题目来说一下:已知前序和中序求后序已知后序和中序求后序已知前序和后序求中序(蒟蒻认为这个应该是没办法实现的吧)后面的博客会更新怎么求层序我们先看这个题目,题目的意思就是入栈的顺序就是先序遍历,出栈的顺序就是后序遍历(个人认为比赛最好用递归,建树的话常常会碰到RE,指针用的不是很好会出现野指针,oj是过不了的)用样例来验证一下:先序遍历为:1 2 3 4 5 6中序遍历为:...原创 2020-03-13 11:59:07 · 213 阅读 · 0 评论 -
P1809 过河问题
题目描述有一个大晴天,Oliver与同学们一共N人出游,他们走到一条河的东岸边,想要过河到西岸。而东岸边有一条小船。船太小了,一次只能乘坐两人。每个人都有一个渡河时间T,船划到对岸的时间等于船上渡河时间较长的人所用时间。现在已知N个人的渡河时间T,Oliver想要你告诉他,他们最少要花费多少时间,才能使所有人都过河。注意,只有船在东岸(西岸)的人才能坐上船划到对岸。这道题是去年天梯赛...原创 2020-03-04 14:04:40 · 473 阅读 · 0 评论 -
P1011 车站
题目描述火车从始发站(称为第11站)开出,在始发站上车的人数为a,然后到达第2站,在第2站有人上、下车,但上、下车的人数相同,因此在第2站开出时(即在到达第3站之前)车上的人数保持为a人。从第3站起(包括第3站)上、下车的人数有一定规律:上车的人数都是前两站上车人数之和,而下车人数等于上一站上车人数,一直到终点站的前一站(第n−1站),都满足此规律。现给出的条件是:共有N个车站,始发站上车的人...原创 2020-02-24 20:21:09 · 373 阅读 · 1 评论 -
P1044 栈
一看题目,再一看图,以为是pat里的那个火车调节,一看题目和那个题目根本么关系…首先根据题目的描述推了一些数据(数据比较特别,这个题肯定是找递推式)1 12 23 54的话就有点多了,没有推下去,那么就在3个数中找找规律吧看了一下并么有发现什么规律…然后我就在想如果输入的是0呢(当然题目的范围是>=1的),按dp想的话,0就是不放入的情况,那么就是1种情况0 11 ...原创 2020-02-23 20:55:43 · 128 阅读 · 0 评论 -
P1466 集合 Subset Sums
题目链接:https://www.luogu.com.cn/problem/P1466题目的意思就是将1~n中的数分成两组,两组的和都为1~n的和的一半即n*(n+1)/2/2,不限制每组中数字的个数。我们将题目意思转化一下,我们取k(0<k<n)个数让他们的和为n*(n+1)/2/2,我们求一下满足的方案数即可,注意一下就是要将数组开到long,可能会溢出(我用int试了一下,有...原创 2020-02-23 19:37:20 · 274 阅读 · 0 评论 -
P1002 过河卒
这个道题应该可以作为dp的入门题目吧,虽然推出来的方程像递推式,思想才最重要的。题目说卒子只能向下和向右走,但是有些地方不能走,让我们求可以到达终点的路径数。有的同学会问dfs不就行了嘛,这题的数据小dfs当然可以,只不过太费时,dp大法好呀。我们先来推一下方程式,我们假定要找起点到(6,6)的路径数,那么,我们找出(5,6)和(6,5)的路径数不就行了嘛,他们的和不就是(6,6)的路径数嘛...原创 2020-02-22 12:40:38 · 168 阅读 · 0 评论 -
P4913 【深基16.例3】二叉树深度
题目描述给出每个节点的两个儿子节点,建立一棵二叉树,如果是叶子节点,则输入0 0。建好树后希望知道这棵二叉树的深度。二叉树的深度是指从根节点到叶子结点时,最多经过了几层。最多有 10^6个结点。传送门这个是昨天做的一个题目,看到好多大犇分分钟AK全场,比赛的时候看了20分钟没看懂题意…(虽然当时有想法),哎~,以后有想法就得先尝试一下,万一对了呢!!!个人觉得这个题目对这个输入的数据没有...原创 2020-02-05 12:16:36 · 797 阅读 · 0 评论 -
P1162 填涂颜色
传送门题目描述的也是比较清楚了,就是将遍历不到的位置输出为2(即闭合圈),其他位置按输入正常输出即可。代码也比较简单,直接看代码理解起来应该没什么问题!!!这题bfs(个人觉得就是类似树的层序遍历)是正解,dfs(个人觉得dfs就是递归,比较好理解)搞不好会超时,下面附上dfs与bfs的AC代码#include<bits/stdc++.h>using namespace std...原创 2020-02-02 13:33:59 · 170 阅读 · 0 评论 -
P1583 魔法照片
题目描述一共有n(n≤20000)个人(以1–n编号)向佳佳要照片,而佳佳只能把照片给其中的k个人。佳佳按照与他们的关系好坏的程度给每个人赋予了一个初始权值W[i]。然后将初始权值从大到小进行排序,每人就有了一个序号D[i](取值同样是1–n)。按照这个序号对10取模的值将这些人分为10类。也就是说定义每个人的类别序号C[i]的值为(D[i]-1) mod 10 +1,显然类别序号的取值为1–1...原创 2020-01-31 19:52:45 · 171 阅读 · 0 评论 -
P1538 迎春舞会之数字舞蹈
题目描述传送门乍一看题目,wc,直接各种蒙蔽,吓得我都没敢下手做,先找了一下题解,然后我发现大犇们都用数组存的,不知道怎么输出的,看完更蒙蔽。TAT无奈只好自己想办法了。耐下心来仔细看了一下样例,我将每一个数分为5个部分,横竖横竖横,每个数之间有一个空格,再观察发现3个横均只有2种状态(有横线和无横线),先输出没有竖线的竖列的空格,再输出k个‘-’,再输出没有竖线的竖列的空格,同理可以发现2...原创 2020-01-30 20:46:00 · 161 阅读 · 0 评论 -
P1022 计算器的改良
题目链接题目分析:我看很多大佬都把这个题目考虑的有点“过于周到”了,这个题目我的理解是直接把系数合并放到=左边,常数合并放到=右边,具体怎么实现呢?我们先设置一个控制正负(1,-1)符号的参数,再设置一个判别等号左右(1,-1)的参数。用这两个参数来模拟系数和常数的位置(即系数在左,常数在右)。具体怎么实现看代码~#include<bits/stdc++.h>using na...原创 2020-01-18 18:24:34 · 135 阅读 · 0 评论 -
P1464 Function
题目链接题目分析:如果a≤0 or b≤0 orc≤0就返回值1.如果a>20 or b>20 or c>20就返回)w(20,20,20)如果a<b并且b<c 就返回w(a,b,c-1)+w(a,b-1,c-1)-w(a,b-1,c)其它的情况就返回w(a-1,b,c)+w(a-1,b-1,c)+w(a-1,b,c-1)-w(a-1,b-1,c-1)题目...原创 2020-01-17 20:03:00 · 134 阅读 · 0 评论 -
P2089 烤鸡
题目链接题目分析:他有10种配料,每种配料可以放1-3克(每种配料至少都放1克),通过这里我们可以缩小n的范围,即[10,30],其他值均不符合要求输出0。这道题10重循环肯定可以解决的啦,最近在学习dfs,尝试的用dfs写了一下,多重循环应该都可以用dfs解决(个人观点哈)!!!AC代码#include<bits/stdc++.h>using namespace std;...原创 2020-01-17 15:22:29 · 228 阅读 · 0 评论 -
P1217 [USACO1.5]回文质数 Prime Palindromes
题目链接先找出所有的回文数,然后再判断是否为素数。直接判断的话最后一个测数会TEL通过查找百度百科了解回文素数的知识,两位回文素数1个,三位回文素数15个,五位回文素数93个,七位回文素数668个,九位回文素数5172个。从而可以删除大量的无用数据,我的代码只删除了8位的数据就AC了,没有用打表的方法删除更多的无用数据。AC代码#include<bits/stdc++.h>u...原创 2020-01-16 18:21:31 · 143 阅读 · 0 评论 -
P1028 数的计算
题目链接题目分析:先输入一个自然数n(n≤1000),然后对此自然数按照如下方法进行处理:1.不作任何处理;2.在它的左边加上一个自然数,但该自然数不能超过原数的一半;3.加上数后,继续按此规则进行处理,直到不能再加自然数为止.假定输入的数组为6,会有如下情况:6,16,26,126,36,136共有6种情况一看题目类型为递归,我就先尝试了dfs暴力搜索,轻轻松松15个TLE…...原创 2020-01-16 14:35:13 · 1543 阅读 · 0 评论 -
P1036 选数
题目链接题目分析:排列组合,将同一组中的所有数据相加得到一个新的数,这些数组成一个集合,统计集合中素数的个数。很明显暴力枚举所有情况,取的个数都不确定,当然不是写一堆循环啦!!!怎么枚举对于我们来说可能是个很大的问题。循环不行那就肯定递归了,递归不需要确定循环的次数,只需要给出终止的条件即可,终止条件那肯定就是要取的个数与已取的个数相等或者是能取的个数超出了已有的个数,这样的话只能判断一种情...原创 2020-01-15 21:06:01 · 223 阅读 · 0 评论 -
P1023 税收与补贴问题
题目链接题解:首先通过题意我们可以知道价格与销量是反相关,再通过题目给的两个公式:总利润=单位商品利润 × 销量 (1)单位商品利润=单位商品价格 - 单位商品成本 (- 税金 or + 补贴) (2)(1)(2)合并可得一个线性函数:总利润=(单位商品价格 - 单位商品成本 (- 税金 or + 补贴)× 销量 (3)因为价格与销量是反相关,我们可以假定系数进行代换,将...原创 2020-01-15 14:58:10 · 246 阅读 · 0 评论 -
P1177快排的优化
题目链接数据结构书本上调用两个函数的两个函数的快排四个测试点全部RE,改成了一个函数第一个点AC,其他三个点还是RE,参考了大佬的代码后AC!!!#include<bits/stdc++.h>using namespace std;int n,a[1000001];void qsort(int l,int r) { int mid=a[(l+r)/2]; int i=l,...原创 2020-01-14 20:19:27 · 179 阅读 · 0 评论