leetcode contest weekly 351

LeetCode450.删除二叉搜索树中的节点

题目描述 给定一个二叉搜索树的根节点 root 和一个值 key,删除二叉搜索树中的 key 对应的节点,并保证二叉搜索树的性质不变。返回二叉搜索树(有可能被更新)的根节点的引用。 一般来说,删除节点可分为两个步骤: 首先找到需要删除的节点; 如果找到了,删除它。 说明: 要求算法时间复杂度为 $O ......
节点 LeetCode 450

2017 China Collegiate Programming Contest Final (CCPC-Final 2017)

目录写在前面EACKJGI写在最后 写在前面 比赛地址:https://codeforces.com/gym/104207。 以下按照个人向难度排序。 妈的怎么感觉有八十万件杂七杂八的事要做。 受不了了,真想直接消失。 这比大学是一秒也不想上了。 E 签到题,看都没看。 code by dztlb: ......
Final 2017 Programming CCPC-Final Collegiate

The 2021 ICPC Asia Macau Regional Contest

https://codeforces.com/gym/104373 A. So I’ll Max Out My Constructive Algorithm Skills 随便选一条路径,若不合法则 reverse 即可。 E. Pass the Ball! 大小相等的置换环显然可以合并,大小不同的 ......
Regional Contest Macau 2021 ICPC

Memo Pack and LeetCode 3

Memo Pack Source code: git.suckless.org/sbase I don't know if it's the standard implementation for Linux bash command, but it's a good material. An ex ......
LeetCode Memo Pack and

Leetcode108. 将有序数组转换为二叉搜索树

因为数组是有序的,可以递归的选取根节点构建子树。 JAVA: public final TreeNode sortedArrayToBST(int[] nums) { if (null == nums) return null; return this.build(nums, 0, nums.len ......
数组 Leetcode 108

LeetCode #1131 Maximum of Absolute Value Expression 绝对值表达式的最大值

安装Flutter环境首先配置flutter3开发环境,照着官方教程傻瓜式安装即可。>>安装和环境配置 | Flutter 中文文档 | Flutter 中文开发者网站注意在国内网络环境下需要进行一些额外的环境配置:>>在中国网络环境下使用 Flutter | Flutter 中文文档 | Flut ......

LeetCode_0042. 接雨水

题目描述 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 示例 示例 1: 输入:height = [0,1,0,2,1,0,1,3,2,1,2,1] 输出:6 解释:上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图, ......
雨水 LeetCode 0042

【misc】[HNCTF 2022 Week1]lake lake lake(JAIL) --沙盒逃逸,globals函数泄露全局变量

查看附件内容 这道题的逻辑就是可以让你输入1或者2,进入各自的函数去执行功能 func函数: def func(): code = input(">") if(len(code)>9): return print("you're hacker!") try: print(eval(code)) ex ......
lake 全局 变量 函数 globals

leetcode322题解

今天来解析一下一道中等的leetcode题,题目如下: 给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。 计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。 你可以认为每种硬币的数量是无限的。 示例 1 ......
题解 leetcode 322

【misc】[HNCTF 2022 Week1]python2 input(JAIL) --沙盒逃逸,python2环境

查看附件,这次有点不太一样,这次是python2的环境 只有一个input函数,但是python2的input函数可是不太一样: 在python2中,input函数从标准输入接收输入,并且自动eval求值,返回求出来的值在python2中,raw_input函数从标准输入接收输入,并返回输入字符串在 ......
python2 python 环境 HNCTF Week1

【misc】[HNCTF 2022 Week1]calc_jail_beginner_level2.5(JAIL) --沙盒逃逸,breakpoint函数

查看附件内容 这道题过滤挺多重要的函数,比如exec,input,eval,还对长度做了限制,这里了尝试了help函数,但是最后一步!ls没通,接着考虑breakpoin函数: Python中内置了一个名为breakpoint()的函数,在Python 3.7中引入,用于在调试模式下设置断点。使用b ......

AtCoder Beginner Contest(abc) 320

B - Longest Palindrome 难度: ⭐ 题目大意 找一个字符串中最长的回文子串 解题思路 数据不大, 暴力即可; 神秘代码 #include<bits/stdc++.h> #define int long long #define IOS ios::sync_with_stdio( ......
Beginner AtCoder Contest 320 abc

[LeetCode] 2849. Determine if a Cell Is Reachable at a Given Time

You are given four integers sx, sy, fx, fy, and a non-negative integer t. In an infinite 2D grid, you start at the cell (sx, sy). Each second, you mus ......
Determine Reachable LeetCode Given 2849

CF351B Jeff and Furik 题解

summarization 有一个长为 \(n\) 的排列 \(p\), 现有甲乙两人轮流执行操作,甲是先手: 甲每次可以交换 \(p\) 中相邻的两个数 \(p_i,p_{i+1}\) 乙每次等概率执行下面两种操作的一种: 选择一对 \(p_i,p_{i+1}\),且 \(p_i\le p_{i+ ......
题解 Furik 351B Jeff 351

【misc】[HNCTF 2022 Week1]calc_jail_beginner(JAIL) --沙盒逃逸

这是一道python沙盒逃逸的题目: 沙箱逃逸:就是在给我们的一个代码执行环境下,脱离种种过滤和限制,最终成功拿到shell权限的过程,其实就是闯过重重黑名单,最终拿到系统命令执行权限的过程,这里不理解没关系,多做两道题就知道了,老实说国内的沙箱逃逸的题不是很多,而且大多都是面向新手的?对我来说正好 ......
calc_jail_beginner beginner HNCTF Week1 misc

【re】[HNCTF 2022 Week1]calc_jail_beginner_level1(JAIL) --沙箱逃逸,python模板注入

查看附件 可以看到,这次过滤挺多重要的字符,比如\,'等字符,还过滤的字母i和b,这道题可通过python模板注入:(ssti注入) # 下面是渐变过程().__class__.__base__.__subclasses__() getattr(().__class__, '__base__')._ ......

【misc】[HNCTF 2022 Week1]calc_jail_beginner_level3(JAIL) --沙盒逃逸,help函数

还是先看附件内容 这里对字符串长度进行了进一步的限制,长度不能大于7,这里可以输入help(),help函数: help() 函数是 Python 的一个内置函数,用于获取关于模块、函数、类、方法等的帮助信息。当你在交互式命令行中使用 help() 函数时,它会打开一个交互式帮助系统,让你能够浏览相 ......

【misc】[HNCTF 2022 Week1]calc_jail_beginner_level2(JAIL) --沙盒逃逸,嵌套执行getshell

查看题目附件 这个if语句直接限制了输入的字符串长度不能大于13,像__import__('os').system('sh')现在肯定用不了,但是可以输入eval(input())进行嵌套执行,这句代码的意思相当于input()继续输入字符串,再由eval函数解析执行,所有就没有了字符长度的限制,然 ......

AtCoder Beginner Contest 327

A - ab #include<bits/stdc++.h> using namespace std; #define mp make_pair #define int long long using vi = vector<int>; using pii = pair<int, int>; con ......
Beginner AtCoder Contest 327

[LeetCode] 2609. Find the Longest Balanced Substring of a Binary String

You are given a binary string s consisting only of zeroes and ones. A substring of s is considered balanced if all zeroes are before ones and the numb ......
Substring LeetCode Balanced Longest Binary

LeetCode106. 从中序与后序遍历序列构造二叉树

题目描述 给定两个整数数组 inorder 和 postorder ,其中 inorder 是二叉树的中序遍历, postorder 是同一棵树的后序遍历,请你构造并返回这颗 二叉树 。 示例 提交的代码 思路: 轻喷,这种还是手写方便。 中序:左中右 后序:左右中 看我上面画的屎图,整棵树的根节点 ......
序列 从中 LeetCode 106

AtCoder Beginner Contest(abc) 319

B - Measure 难度: ⭐ 题目大意 给定一个数N, 我们要求输出长度为n+1的一个序列Si(i从0到n), 对于Si, 如果存在j(j从1~9)是N的一个除数, 并且i是N/j的一个倍数, 那么Si就是满足条件的最小的j, 如果没存在就输出'-'; 解题思路 数据不大, 暴力即可; 神秘代 ......
Beginner AtCoder Contest 319 abc

AtCoder Beginner Contest 327 (ABC327)

A. ab 直接根据题意模拟即可。 Code B. A^A 直接枚举 \(i= 1, 2,\dots, 15\),每次看看 \(i ^ i\) 是否等于 \(A\) 即可。 Code C. Number Place Description 给你一个 \(9 \times 9\) 的矩阵 \(A\), ......
327 Beginner AtCoder Contest ABC

AtCoder Beginner Contest 327

A - ab 题意:判断字符串中是否有“ab”或者是“ba“ #include<bits/stdc++.h> using namespace std; void solve(){ int n; cin>>n; string s; cin>>s; if(s.find("ab")!=s.npos||s. ......
Beginner AtCoder Contest 327

LeetCode每日算法3—无重复字符的最长子串

题目描述 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 示例 输入: s = "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 解题思路 这个题目可以使用双指针+map来实现: 首先用双指针维护一个滑动窗口用来剪切子串 开始时, ......
算法 字符 LeetCode

AtCoder Beginner Contest(abc) 318

B - Overlapping sheets 难度: ⭐ 题目大意 在一个坐标系中给出覆盖多个矩形, 问最后所有矩形覆盖的总面积是多少; 解题思路 坐标系的范围不大, 标记后遍历即可; 还是要注意给的是坐标系的点, 计算的是边; 神秘代码 #include<bits/stdc++.h> #defin ......
Beginner AtCoder Contest 318 abc

LeetCode222.完全二叉树的节点个数

题目描述 给你一棵 完全二叉树 的根节点 root ,求出该树的节点个数。 完全二叉树 的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的若干位置。若最底层为第 h 层,则该层包含 1~ 2h 个节点。 示例 提交的代码 你被 ......
节点 个数 LeetCode 222

[Leetcode] 0119. 杨辉三角 II

119. 杨辉三角 II 题目描述 给定一个非负索引 rowIndex,返回「杨辉三角」的第 rowIndex 行。 在「杨辉三角」中,每个数是它左上方和右上方的数的和。 示例 1: 输入: rowIndex = 3 输出: [1,3,3,1] 示例 2: 输入: rowIndex = 0 输出: ......
杨辉三角 Leetcode 0119 II

[Leetcode] 0118. 杨辉三角

118. 杨辉三角 题目描述 给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。 在「杨辉三角」中,每个数是它左上方和右上方的数的和。 示例 1: 输入: numRows = 5 输出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]] 示 ......
杨辉三角 Leetcode 0118

[Leetcode] 0112. 路径总和

112. 路径总和 题目描述 给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum 。如果存在,返回 true ;否则,返回 false 。 叶子节点 是指没有子节点的节点。 ......
总和 路径 Leetcode 0112