2018
软考系列(系统架构师)- 2018年系统架构师软考案例分析考点
试题一 软件架构(非功能性需求、C/S 架构) 【问题1】(8分) 在系统架构设计中,决定系统架构设计的非功能性需求主要有四类:操作性需求、性能需求、安全性需求和文化需求。请简要说明四类需求的含义。 (1) 操作性需求:指系统完成任务所需的操作环境要求及如何满足系统将来可能的需求变更的要求。 (2) ......
P4481 [BJWC2018] 序列合并 Solution
orz zhy,又被爆杀了。 首先四方 DP 是 trivial 的,我们设 \(f_{l,r,d}\) 表示 \([l,r]\) 的区间内被合并成 \(d\) 个石子的最小代价,对于 \(d>1\) 的位置 DP 完后可以贡献到 \(d=1\) 的位置。 其实这个做法可以直接通过本题(跑得飞快)可 ......
NOIP2018PJ T3 摆渡车(2023.10第二版题解)
题目链接 题意: 时间轴上分布着$n$位乘客($1\le n\le 500$),$i$号乘客的位置为$t_i$(0\le t_i\le 4\times 10^6),用互相距离不小于$m$的车次将时间轴分为若干部分,并管辖以自己为右端点的这个区间(除了第一趟车包括$0$,其他车次左开右闭),求最小费用 ......
P4899 [IOI2018] werewolf 狼人 题解
P4899 [IOI2018] werewolf 狼人 题解 题目描述 省流: \(n\) 个点,\(m\) 条边,\(q\) 次询问,对于每一次询问,给定一个起点 \(S\) 和终点 \(T\) ,能否找到一条路径,前半程不能走 \(0\thicksim L-1\) 这些点,后半程不能走 \(R+ ......
P5018 [NOIP2018 普及组] 对称二叉树
先递归判断当前子树是不是对称二叉树,如果是就取 \(\max\) 然后退出,否则继续递归左儿子的左子树和右儿子的右子树、左儿子的右子树和右儿子的左子树判断。 最坏情况是每次都递归到叶子,也就是每层都是 \(O(n)\)。但一共只有 \(O(\log n)\) 层,所以时间复杂度是 \(O(n\log ......
CItect2018 R2过程分析器显示不了曲线
这一篇博客我在新浪博客记录过,在这里也记录一遍,新浪博客地址是CItect2018R2过程分析器显示不了曲线_来自金沙江的小鱼_新浪博客 (sina.com.cn) 这两天在现场遇到奇怪的现象,CITECT2018R2的过程分析器显示不了曲线,如果在线运行时在过程分析器添加一个趋势笔,那么所有曲线就 ......
P1612 [yLOI2018] 树上的链 题解
思路 看到条件 \(2\),我们得知:这个节点对应的最长链,一定在这个节点到根节点的简单路径上。 所以我们记录 \(1\) 到 \(i\) 之间的权值和,记为 \(sum_i\)。因为权值是正整数,所以满足单调性,可以二分。 如何二分路径上的点呢?我们维护一个与当前 dfs 同步的栈,记录从根节点到 ......
P4437 [HNOI/AHOI2018] 排列
P4437 [HNOI/AHOI2018] 排列 Solution \(a_i \to i\) 连边,出现环则无解,否则因为 \(1 \sim n\) 每个点入度为 \(1\),一定会构成森林。 安排点 \(1 \sim n\) 的选取顺序,使得父节点总是比子节点先选。记点 \(i\) 的选取时间为 ......
洛谷P9290 [ROI 2018] Decryption 题解
include<bits/stdc++.h> pragma GCC optimize(1) pragma GCC optimize(2) pragma GCC optimize(3,"Ofast","inline") define reg register define int long long ......
八点五省联考 2018
一双木棋 状态数不多,直接爆搜 https://loj.ac/s/1676274 IIIDX 考虑依次给 \(i=1,2,\cdots,n\) 填上数,每次尽量填最大的。考虑什么时候 \(i\) 填上 \(x\) 是合法的。考虑 Hall 定理,发现左部点约束最严的时候肯定是找一个已经填过的点 \( ......
[HCTF 2018]admin
原理 Unicode欺骗 弱口令 session伪造 解题过程 进入靶场,有注册和登录按钮,再看原代码 看到/posts链接,但是点了是404,还有登录和注册链接,之后就是you are not admin的提示,估计是要变成admin登录 解法一 弱口令登录 最终爆破得出密码是123,登录拿到fl ......
[护网杯 2018]easy_tornado
原理 模板render的handler.settings窃取cookie_secret 解题过程 进入靶场有三个超链接 查看原代码看到三个超链接地址 <a href='/file?filename=/flag.txt&filehash=85e5682df55f8ca33e9d791703ca4cb1 ......
[BUUCTF 2018]Online Tool
原理 绕过escapeshellarg+escapeshellcmd函数 nmap写入木马 解题过程 学习一下两个函数使用时的绕过思路 参考文章:https://blog.csdn.net/lzu_lfl/article/details/130780808 https://blog.51cto.co ......
文本分类 2018-2020 文献分析
文本分类 转自 https://mp.weixin.qq.com/s/0hKzedHimfPtWgzEk49YzA https://mp.weixin.qq.com/s/0hKzedHimfPtWgzEk49YzA A Survey on Text Classification: From Shal ......
[网鼎杯 2018]Fakebook
原理 sql注入关键字绕过 反序列化 ssrf 解题过程 进入靶场,有登录按钮和注册按钮。查看页面原代码,对应是login.php和join.php,先注册一个看看有什么 blog随便输发现会报错,其他也是,那试试输入一个网站呢? 输入www.baidu.com发现可以 进入这个界面,先看看原代码吧 ......
[TJOI2018] 游园会题解
[TJOI2018] 游园会(dp套dp) 目录[TJOI2018] 游园会(dp套dp)前言:题目简化:解题思路:较为简单的一步:较为困难的步骤思路总结代码呈现:注释/后记: 前言: 这是和 dp 套 dp 的初遇,这不得好好了解一下。 题目简化: 先把题目进行简化,就是要构造字符串,对于 $le ......
【基环树 | 题解】P5022 [NOIP2018 提高组] 旅行
前言 一日知基环树弱,固补题。 关于基环树 基环树定义 一个环,环上每个点都有一颗以该点为根的树,如下图为一棵基环树 关于基环树常规思路 通常来说基环树常规思路是先处理环上树的结果,后通过树的结果来处理换上结果。 具体处理方式依照题目来定。 然而只是通常来说 因为基环树的问题灵活性强且就算没专门学过 ......
The 2018 ACM-ICPC Asia Qingdao Regional Contest, Online (The 2nd Universal Cup
The 2018 ACM-ICPC Asia Qingdao Regional Contest, Online (The 2nd Universal Cup. Stage 1: Qingdao) J - Press the Button \(1 \leq a, b, c, d \leq 10^6\) ......
BUUOJ[HCTF 2018]WarmUp 1
原理 代码审计 查看页面原代码 文件包含 liunx的不存在目录构造 解题过程 进入靶场,只有这么一个图,老规矩查看页面原代码 应该是让我们访问source.php文件 那就是让我们代码审计咯 <?php highlight_file(__FILE__); class emmm { public s ......
[网鼎杯 2018]Fakebook
这是一道SQL联合注入与ssrf的题目 解题过程 进入链接发现是一个注册登录界面。在登录页面尝试注入没有作用。先随便注册一个用户 登录后点击用户名跳转到详情界面 随手测试发现存在报错,大概率有SQL注入 1 and 1=2无回显测试为数字型注入 尝试union联合注入,1 order by 4查询字 ......
P5015 [NOIP2018 普及组] 标题统计
题目描述 传送门 凯凯刚写了一篇美妙的作文,请问这篇作文的标题中有多少个字符? 注意:标题中可能包含大、小写英文字母、数字字符、空格和换行符。统计标题字符数时,空格和换行符不计算在内。 输入格式 输入文件只有一行,一个字符串 \(s\)。 输出格式 输出文件只有一行,包含一个整数,即作文标题的字符数 ......
P5299 [PKUWC2018] Slay the Spire
P5299 [PKUWC2018] Slay the Spire 洛谷:P5299 [PKUWC2018] Slay the Spire LOJ:#2538. 「PKUWC2018」Slay the Spire 前言:请分清楚 使用 和 抽取。九条要 抽取 \(m\) 张牌,但只会 使用 \(k\) ......
Gym 104270 The 2018 ICPC Asia Qingdao Regional Programming Contest (The 1st Universal Cup, Stage 9: Qingdao)
A. Sequence and Sequence B. Kawa Exam 可以发现,对答案会产生影响的只有割边,把所有边双缩起来,然后就是一个森林。 考虑一个树的时候怎么做,就是对于每条边求出这条边两端的众数个数,考虑线段树合并,每次动态维护子树内的众数和子树外的众数。 #include<iost ......
P5020 [NOIP2018 提高组] 货币系统
#include <cstdio> #include <algorithm> using namespace std; const int N = 105; const int A = 25005; int a[N]; bool dp[A]; int main() { int t; scanf("% ......
CF957 Codeforces Round 472 (rated, Div. 2, based on VK Cup 2018 Round 2)
CF957A Tritonic Iridescence 如果原序列中有两个相同的字符,显然不合法。 如果开头或者结尾为 ?,或者有两个连续的 ?,或者一个 ? 两边的字符不同显然合法。 否则一定不合法。 #include<iostream> #include<cstdio> using namesp ......
JOI Open 2018
バブルソート 2 / Bubble Sort 2 可以发现,答案即为 \(\max\limits_{i=1}^n \sum\limits_{j=1}^{i-1}[a_j>a_i]\)。 因为是 \(\max\),所以可能成为答案只有后缀最小值,可以把式子改写成 \(\max\limits_{i=1} ......
CADDi 2018
C - Product and GCD 令 \(P=\prod p_i^{c_i}\)。 对于某个 \(p_i^{c_i}\),要使得 \(\gcd(a_i)\) 尽可能大,肯定将每个 \(p_i\) 平均分给 \(n\) 个数最优,然后就没了。 #include<iostream> #includ ......
P4427 [BJOI2018] 求和
P4427 [BJOI2018] 求和 树链剖分+树上前缀和 说来有趣,中午刚学完树上前缀和,立马就在这用上了 注意这里是点的前缀和,算出每个点的前缀和后,会发现有不少重复的,减去重复的点权和,就可以了。 利用mi[j],数组记录每个深度的第j次方,s[v][j]记录根节点到v点j次方的前缀和。 代 ......
P4425 HNOI/AHOI2018 转盘
Day 21。 容易发现最优解里一定存在一种方案,为「一开始停留一段时间,然后一直往下一个取」的形式。通过调整容易证明。 断环成链,直接列出式子: \[\text{ans}=\min\limits_{n\le i<2n}\max\limits_{i-n< j\le i}a_j-j+i \]令 \(t ......