题解joisc 2020

WEB|[WUSTCTF2020]CV Maker

注册帐号登录 存在文件上传的地方,上传一句话木马文件 提示exif_imagetype not image!,exif_imagetype是php里通过文件头判断是不是图片,可以通过图片马绕过 exif_imagetype() 读取一个图像的第一个字节并检查其签名。 制作图片马 # win copy ......
WUSTCTF Maker 2020 WEB CV

WEB|[WUSTCTF2020]颜值成绩查询

页面提示输入以查询分数,输入1,链接发现?stunum=1猜测应该是注入 http://0c6ebf06-dd69-4596-8c4b-a13e10a76d3e.node4.buuoj.cn:81/?stunum=1 输入2 输入3 输入4 最多输入到4,可以看到输出显示的内容不一样,可以利用这一点 ......
成绩查询 成绩 WUSTCTF 2020 WEB

WEB|[Zer0pts2020]Can you guess it?

源码 <?php include 'config.php'; // FLAG is defined in config.php if (preg_match('/config\.php\/*$/i', $_SERVER['PHP_SELF'])) { exit("I don't know what ......
guess 0pts 2020 Zer0 WEB

Crypto|[NPUCTF2020]EzRSA

attachment.py from gmpy2 import lcm , powmod , invert , gcd , mpz from Crypto.Util.number import getPrime from sympy import nextprime from random impo ......
Crypto NPUCTF EzRSA 2020

Crypto|[BJDCTF2020]RSA

task.py from Crypto.Util.number import getPrime,bytes_to_long flag=open("flag","rb").read() p=getPrime(1024) q=getPrime(1024) assert(e<100000) n=p*q m ......
Crypto BJDCTF 2020 RSA

Crypto|[BJDCTF2020]easyrsa

rsa_task.py from Crypto.Util.number import getPrime,bytes_to_long from sympy import Derivative from fractions import Fraction from secret import flag ......
easyrsa Crypto BJDCTF 2020

Web|Buuctf-[NPUCTF2020]ezinclude

查看源码提示md5($secret.$name) $pass cookie中存在hash,hash随着name的变化而变化 hash填入pass参数请求跳转到404页面 使用burpsuite发包,提示存在flflflflag.php页面 flag不在此页面,并且页面存在文件包含漏洞 读取flflf ......
ezinclude Buuctf NPUCTF 2020 Web

Reverse|[ACTF新生赛2020]easyre

DiE查询发现是UPX加壳,使用工具拆壳 ./upx -d file.exe 32位程序使用ida32打开 找到关键代码 int __cdecl main(int argc, const char **argv, const char **envp) { char v4; // [esp+12h] ......
新生 Reverse easyre ACTF 2020

JOISC 乱做

JOISC 2020 D1T1 Building 4 有显然的 $O(n^2)$ DP,大力猜测状态里 A 的个数这一维对于合法的状态是一个区间,就可以 $O(n)$ 了。 不太会证,~~已经过 C++ 核实~~。 D1T2 Hamburg Steak 感觉,没啥想法,好像有很多随机化过了。 正解做 ......
JOISC

[Luogu-P1008]题解(C++)

Part I Preface 原题目(Luogu) Part II Sketch 求出若干组排列 $a,b,c$,使得 $a:b:c = 1:2:3$。 Part III Analysis 暴力 $9$ 层循环即可。 Part IV Code #include <iostream> using na ......
题解 Luogu-P Luogu 1008

[Luogu-P1007]题解(C++)

Part I Preface 原题目(Luogu) Part II Sketch 给定一个正整数 $L$,表示独木桥长度。 给定一个正整数 $N$,表示桥上士兵的数量。 给定 $N$ 个整数,分别表示每个士兵的坐标。 规定走到 $0$ 坐标或 $L+1$ 的位置为下桥,两个士兵相遇时不能走过去,他们 ......
题解 Luogu-P Luogu 1007

[Luogu-P1003]题解(C++)

Part I Preface 原题目(Luogu) Part II Sketch 给定一个正整数 $n$,表示地毯张数。 接下来 $n$ 行,每行 $4$ 个整数,$a,b,g,k$,分别表示一个地毯的左下角和右上角的坐标。 最后一行,$x,y$,表示查询的点。 求出这个点上面覆盖的最上面的地毯编号 ......
题解 Luogu-P Luogu 1003

[AtCoder-AT_ABC108_B]题解(C++)

Part I Preface 原题目(Luogu) 原题目(AtCoder) Part II Sketch Part III Analysis 观察这道题,我们很容易想到,必须推导出 $x1, y1, x2, y2$ 与 $x3, y3, x4, y4$ 之间的关系。 我们观察下图。 可以发现: $ ......
题解 AtCoder-AT_ABC AtCoder ABC 108

[CodeForces-1104A]题解(C++)

Part I Preface 原题目(Luogu) 原题目(CodeForces) Part II Sketch 给定一个整数 $n$。 将 $n$ 拆分成一个数列 $a_1,a_2,a_3,\dots,a_m$。 使得 $\sum\limits_{k = 1}^{m}a_k = n$,每个 $a_ ......
题解 CodeForces 1104

[CodeForces-143A]题解(C++)

Part I Preface 原题目(Luogu) 原题目(CodeForces) Part II Sketch 设有一个 $2 \times 2$ 的棋盘,上面可以填入 $1-9$ 的数字。 给出 $6$ 个数字,为每行每列以及每个对角线上的数字之和,求相应的摆放方式,无解输出 $-1$。 Par ......
题解 CodeForces 143

【模板】堆 题解

题目传送门 一道小根堆模板题。 在做这道题之前,我们先介绍一下小根堆是什么。 我们定义小根堆是一种对于任何一个父结点的权值总是小于或等于子节点权值的完全二叉树。因此,不难看出,一个小根堆的堆顶(这棵树的根节点)应该是这个堆(树)中权值最小的结点。 简单介绍完了小根堆,我们再介绍下如何存储。 存储 我 ......
题解 模板

【ABC298C】题解

思路 一道很好的复习数据结构的题。 对于第 $1$ 个问答(既第 $2$ 种操作),我用一个小根堆(优先队列,$\text{priority_queue}$)来储存第 $i$ 个盒子的卡牌。 对于第 $2$ 个问答(既第 $3$ 种操作),我用一个 $\text{set}$ 来储存编号为 $i$ 个 ......
题解 298C ABC 298

Inna and Huge Candy Matrix 题解

题目传送门 一道模拟题。 先看数据范围,$x,y,z \le 10^9$ 显然会超时。不难看出,顺时针或逆时针旋转 $4$ 次和镜面对称 $2$ 次后会恢复原样,所以我们先对 $x,y,z$ 进行取余。 $$x\bmod 4,z\bmod4,y\bmod2$$ 然后我们观察一个矩阵顺时针旋转后坐标的 ......
题解 Matrix Candy Inna Huge

[ACTF新生赛2020]usualCrypt 1

#日常查壳: ##32位,运行看看: ####(有点嚣张,但不多),任意输入退出。 ###进IDA看主函数: ####进入主函数后,首先是读入一个字符串,然后是对该字符串进行sub_401080方法加密,最后是对比。 ####那么我们跟进方法,看看是什么加密类型: ####第一眼下去还多了一个方法s ......
usualCrypt 新生 ACTF 2020

题解 P9320/CF::Gym104229D【[EGOI2022] Tourists】

problem 一个长为 $m$ 的数组 $a$,每个数的取值为 $[1,n]$ 的正整数;另外有一个长为 $m$ 的数组 $b$,初始全零;另外有一棵 $n$ 个点的树,求树上两点距离的函数为 $dist$。请支持三种操作: 输入 $l,r,c$,枚举 $i\in [l,r]$,使得 $b_i\g ......
题解 Tourists 104229D 104229 9320

【学习笔记】【题解】树形依赖 DP 选做

地址:https://www.cnblogs.com/FReQuenter5156/p/shuxingyilaidp.html/ 简介 这类背包本质上是分组背包问题。 将一个节点的每一棵子树看作一组,进行分组背包。所谓分组背包,即在选择物品的时候,一开始将物品分为好几组,在选择时,可以从每一组中至多 ......
树形 题解 笔记 DP

CF1816D 题解

一、题目描述: 这是一道交互题,你需要猜出一个 $1$~$n$ 的全排列 $p_1,p_2,p_3...p_n$ 。 有 $t$ 组数据,每组数据有一个整数 $n$ 表示数组的大小。 假设一开始有一个只有 $n$ 个点,没有边的图。你有 $2\times n$次询问机会,两种询问方式: 第一种:$+ ......
题解 1816D 1816 CF

CF338D GCD Table-题解(excrt)

CF338D GCD Table 个人评价:还好 算法 扩展CRT 题面 给了一张$n\times m$的矩阵,第i行j列的权值是gcd(i,j),现在有一个长度为k的序列A,问是否存在(i,j)使得$gcd(i,j+l-1)=a_l(1\leq l\leq k)$ 问题分析 我们将对应行设为x,对 ......
题解 Table excrt 338D 338

P8446 虹色的北斗七星 题解

传送门 前言: 很久之前做的一道题目了,当时并没有想出来怎么做,随便猜了个结论交上去发现过了。(~~好像还是第一道自己做出来的绿~~) 简要题意: 你有一个长度为 $n$ 的序列 $a$ ,一个区间$[l, r]$的价值定义为当前区间的极差减去区间长度,求出最大的价值。 $Solution$: 看了 ......
题解 北斗 P8446 8446

[WUSTCTF2020]level2 1

#查壳: ####32位,有个小壳,怎么办,脱了呗,还能这么办(方法见前文)https://www.cnblogs.com/TFOREVERY/p/17366210.html ###脱壳后,进入IDA找主函数: ####脸上就是flag{Just_upx_-d}收工。 ......
WUSTCTF level2 level 2020

[MRCTF2020]Transform 1

#查壳: ###64位,先看看运行有问题吗: ####任意输入给你弹了一个wrong ###进IDA看看: ####解释:输入一个字符串,要满足字符串的长度为33,不然就报错。接下来是在输入的字符串中拿出特定的字符,进行异或后得到一个新的字符串,最后与特定的字符串对比。 ####这样看来,我们先看要 ......
Transform MRCTF 2020

[CodeForces-545A]题解(C++)

Part I Preface 原题目(Luogu) 原题目(CodeForces) Part II Sketch 给定一个正整数 $n$,表示汽车数量。 给定一个 $n \times n$ 阶矩阵 $A$,第 $i$ 行 $j$ 列上的数字表示 $i$ 车与 $j$ 车的对撞情况。 $\begin{ ......
题解 CodeForces 545

[CodeForces-545A]题解(C++)

Part I Preface 原题目(Luogu) 原题目(CodeForces) Part II Sketch 给定一个正整数 $n$,表示汽车数量。 给定一个 $n \times n$ 阶矩阵 $A$,第 $i$ 行 $j$ 列上的数字表示 $i$ 车与 $j$ 车的对撞情况。 $\begin{ ......
题解 CodeForces 545

CF1260E Tournament 题解

妙妙题,但是感觉评不到紫。 题目链接。 题意 luogu 题意。 有 $n$ 个人,贿赂第 $i$ 个人的代价为 $a_i$。这些人中,贿赂代价为 $-1$ 的是你的朋友。现在,你可以两两配对,使得编号小的被淘汰,但是,如果你贿赂了编号大的,那么编号大的被淘汰,而编号小的留下。问:使得你朋友夺得冠军 ......
题解 Tournament 1260E 1260 CF

2020ICPC南京J

以前没写过势能线段树,然后错了114514个地方,我有罪。 #include<bits/stdc++.h> using namespace std; const int N=200013; int a[N]; struct segtree{ #define mid ((l+r)>>1) #defin ......
2020 ICPC