acwing 471. 棋盘 解题记录】的更多相关文章

题解地址  https://www.acwing.com/problem/content/description/473/ 有一个m×m的棋盘,棋盘上每一个格子可能是红色.黄色或没有任何颜色的. 你现在要从棋盘的最左上角走到棋盘的最右下角.  任何一个时刻,你所站在的位置必须是有颜色的(不能是无色的),你只能向上.下.左.右四个方向前进. 当你从一个格子走向另一个格子时,如果两个格子的颜色相同,那你不需要花费金币:如果不同,则你需要花费1个金币.  另外,你可以花费2个金币施展魔法让下一个无色格…
习题地址 https://www.acwing.com/problem/content/description/530/ 现有一块大奶酪,它的高度为h,它的长度和宽度我们可以认为是无限大的,奶酪中间有许多半径相同的球形空洞. 我们可以在这块奶酪中建立空间坐标系,在坐标系中,奶酪的下表面为z=0,奶酪的上表面为z=h.  现在,奶酪的下表面有一只小老鼠Jerry,它知道奶酪中所有空洞的球心所在的坐标. 如果两个空洞相切或是相交,则Jerry可以从其中一个空洞跑到另一个空洞,特别地,如果一个空洞与下…
pwnable input解题记录 给了源码如下: #include "stdio.h" #include "unistd.h" #include "stdlib.h" #include "arpa/inet.h" int main(){ //stage argv char *argv[101] = {"/home/input2/input", [1 ... 99] = "A", NUL…
angr脚本--以angrctf解题记录为参考 ​ angr是用于逆向工程中进行二进制分析的一个python框架 ​ 符号执行 (Symbolic Execution)是一种程序分析技术.其可以通过分析程序来得到让特定代码区域执行的输入.使用符号执行分析一个程序时,该程序会使用符号值作为输入,而非一般执行程序时使用的具体值.在达到目标代码时,分析器可以得到相应的路径约束,然后通过约束求解器来得到可以触发目标代码的具体值. ​ 以下脚本均用Python3执行,在笔者Ubuntu16.04虚拟机上通…
1. 前言 由于后面还有很多题型要写,贪心算法目前可能就到此为止了,上一篇博客的地址为 LeetCode解题记录(贪心算法)(一) 下面正式开始我们的刷题之旅 2. 贪心 763. 划分字母区间(中等) 题目链接 思路 想切割,要有首尾两个指针,确定了结尾指针,就能确定下一个切割的开始指针. 遍历字符串,如果已扫描部分的所有字符,都只出现在已扫描的范围内,即可做切割. 注意 : 贪心的思想为,只要是扫描过的字符,都出现在我扫描的范围之类,我就切割,不去考虑其他的条件,这样能保证切割的数量最多 代…
ssrf解题记录 最近工作需要做一些Web的代码审计,而我Web方面还比较薄弱,决定通过一些ctf的题目打打审计基础,练练思维,在博客上准备开几个专题专门记录刷题的过程. pwn题最近做的也很少,也要开始做题了. 2020 GKctf:Ezweb 题目打开如下: 查看前端页面源码发现hint:get方式提交secret参数.传递secret参数之后发现后端执行了ifconfig命令. 有了内网ip之后,尝试在输入框输入ip地址,然后发现会对服务器的资源进行请求,请求到资源的结果会显示在页面前端.…
题目地址 https://www.acwing.com/problem/content/description/793/ 题目描述给定两个正整数,计算它们的和. 输入格式共两行,每行包含一个整数. 输出格式共一行,包含所求的和. 算法很明显 输入会超过64位 也就是即使long long 类型也不能进行常规加法那么输入就是用string 接收字符串 来模拟加法 加法主要是三个数字的相加 数字a 数字b 以及进位所以 int sum = (a - '0') + (b - '0') + next;然…
你玩过“拉灯”游戏吗?25盏灯排成一个5x5的方形.每一个灯都有一个开关,游戏者可以改变它的状态.每一步,游戏者可以改变某一个灯的状态.游戏者改变一个灯的状态会产生连锁反应:和这个灯上下左右相邻的灯也要相应地改变其状态. 我们用数字“”表示一盏开着的灯,用数字“”表示关着的灯.下面这种状态 在改变了最左上角的灯的状态后将变成: 再改变它正中间的灯后状态将变成: 给定一些游戏的初始状态,编写程序判断游戏者是否可能在6步以内使所有的灯都变亮. 输入格式 第一行输入正整数n,代表数据中共有n个待解决的…
自以为sql注入掌握的还是比较系统的,然而,做了这些题之后才发现,大千世界无奇不有,真是各种猥琐的思路...还是要多学习学习姿势跟上节奏 登录一下好吗?? http://ctf5.shiyanbar.com/web/wonderkun/web/index.html 试了一下发现他过滤了/ or union select - # 虽然and ' " = + %没有被过滤,但用%0b和%23都没效,于是还在想这是用了多麻烦的WAF,越想越复杂我竟然还去用xss,真是跑题了... 然而最后的paylo…
1. 前言 目前得到一本不错的算法书籍,页数不多,挺符合我的需要,于是正好借这个机会来好好的系统的刷一下算法题,一来呢,是可以给部分同学提供解题思路,和一些自己的思考,二来呢,我也可以在需要复习的时候,通过博客来回顾自己,废话不多说,开始! 目前的规划 2. 算法解释 顾名思义,贪心算法或贪心思想采用贪心的策略,保证每次操作都是局部最优的,从而使最后得到的结果是全局最优的. 举一个最简单的例子:小明和小王喜欢吃苹果,小明可以吃五个,小王可以吃三个.已知苹果园里有吃不完的苹果,求小明和小王一共最多…
尽量抽空刷LeetCode,持续更新 刷题记录在github上面,https://github.com/Zering/LeetCode 2016-09-05 300. Longest Increasing Subsequence 问题:https://leetcode.com/problems/longest-increasing-subsequence/ 分析:http://zering.me/2016/09/02/Longest-Increasing-Subsequence/ 源码:http…
1.HDU 2222 Keywords Search 模板题 #include <bits/stdc++.h> #define fir first #define sec second #define EPS 1e-12 using namespace std; typedef long long LL; typedef pair<int , int > pii; ; struct Trie{ ],fail[MAXN],ed[MAXN]; int root,L; int newno…
P3956 棋盘 题目描述 有一个\(m×m\)的棋盘,棋盘上每一个格子可能是红色.黄色或没有任何颜色的.你现在要从棋盘的最左上角走到棋盘的最右下角. 任何一个时刻,你所站在的位置必须是有颜色的(不能是无色的), 你只能向上. 下.左. 右四个方向前进.当你从一个格子走向另一个格子时,如果两个格子的颜色相同,那你不需要花费金币:如果不同,则你需要花费1个金币. 另外, 你可以花费2个金币施展魔法让下一个无色格子暂时变为你指定的颜色.但这个魔法不能连续使用, 而且这个魔法的持续时间很短,也就是说,…
P3698 [CQOI2017]小Q的棋盘 题目描述 小 Q 正在设计一种棋类游戏. 在小 Q 设计的游戏中,棋子可以放在棋盘上的格点中.某些格点之间有连线,棋子只能在有连线的格点之间移动.整个棋盘上共有 V 个格点,编号为0,1,2 - , V− 1,它们是连通的,也就是说棋子从任意格点出发,总能到达所有的格点.小 Q 在设计棋盘时,还保证棋子从一个格点移动到另外任一格点的路径是唯一的. 小 Q 现在想知道,当棋子从格点 0 出发,移动 N 步最多能经过多少格点.格点可以重复经过多次,但不重复…
这道题考查对二维数组的处理,哈希表. 1.最自然的方法就是分别看每一个数是否符合三个规则.所以就须要对应的数据结构来 记录这些信息,判定是否存在.显然最先想到用哈希表. 2.学会把问题抽象成一个个的子问题. 3.在索引的构建上下工夫. 4.底层数组怎样相应的细节没有那么重要,重要的是构成了问题的全集. 代码:这里 附图:一趟遍历时依据i,j.相应到详细的grid,这里的构造模式有多种(??)…
昨天晚上有个LeekCode的比赛,两个半小时解五题,轻松解决前两题后,卡在第三题,还剩半小时时放弃,开始解第五题,解完但未验证通过,第四题只看了下题目. 排名第一的大佬只用了36分钟全部写完. 差距很大,只能一点一点的向大佬靠近. LeekCode---5. 最长回文子串 给定一个字符串 s,找到 s 中最长的回文子串.你可以假设 s 的最大长度为 1000. 解题思路:这题的解法有好几种,我说一下我自己解这道题的思路(中心扩展).首先,回文分为三类:1:'baab':2:'bab':3:'a…
web新手练习区一至四题 第一题view_source: 题目说右键不管用了,我们先获取在线场景来看一看,我们看到这样一个网页,并且右键确实点了没什么反应,而用到右键一般就是查看网页源码 用快捷键(F12或是Ctrl+shift+i)打开网页源码即可找到flag flag即为: cyberpeace{c602a5e3d03c281beac2a5b0b3610ae6} 第二题get_post: 需要用到工具:hackbar http通常使用两种请求方法是get和post也就是题目的名称所提示的一样…
Jump Game Given an array of non-negative integers, you are initially positioned at the first index of the array. Each element in the array represents your maximum jump length at that position. Determine if you are able to reach the last index. For ex…
175 Combine Two Tables 题目:左连接Person表和Address表. select FirstName,LastName,City,State from Person p left join Address a on p.PersonId=a.PersonId; 7个case耗时1001ms(注意耗时多次提交会不同,一般相差不大,偶尔也有相差大的)   --2015/1/11 176 Second Highest Salary 题目:写一条sql语句查询Employee …
Analysis 这是一个经典的二分图问题,我们将图进行奇偶染色,注意边界条件的判断.再跑一遍匈牙利算法就行了,跟上一题很像. #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #define maxn 110 using namespace std; inline int read() { ; ; char c=getchar(); ; )+(x<<…
前言 国庆这几天感觉没什么好玩的地方,家又离的太远,弱鸡的我便决定刷刷题涨涨知识,于是就有了这篇文章.. 正文 写的不对的地方欢迎指正 web26 打开直接就是代码,这应该就是一道代码审计的题了 这里主要需要绕过第一个正则匹配,同时要令$result为真就能得到flag了 \d+匹配多个数字字符 s 特殊字符圆点 . 中包含换行符 D 如果使用$限制结尾字符,则不匹配结尾换行;(详细可百度正则表达式修饰符)  这里的/\d+/sD是用来匹配数字,只需字符串就可以绕过   is_numeric()…
1. 算法解释 双指针主要用于遍历数组,两个指针指向不同的元素,从而协同完成任务.也可以延伸到多个数组的多个指针. 若两个指针指向同一数组,遍历方向相同且不会相交,则也称为滑动窗口(两个指针包围的区域即为当前的窗口),经常用于区间搜索. 若两个指针指向同一数组,但是遍历方向相反,则可以用来进行搜索,待搜索的数组往往是排好序的. 对于 C++ 语言,指针还可以玩出很多新的花样.一些常见的关于指针的操作如下. 1.1 指针与常量 1.2 指针函数与函数指针 static string Blog_Ad…
日常破解---XCTF_APP1获取flag记录 一.题目来源   来源:XCTF社区安卓题目app1 二.解题记录     1.首先安装到模拟器中运行一下,如下图所示,点击一下按钮,弹出提示年轻人不要耍小聪明哦     2.将APK文件拖进AndroidKiller中反编译,直接搜索关键字年轻人以确定按钮触发的事件位置,搜索结果如下图所示:     3.偷懒不看smali代码了,直接将apk拖进jeb中查看java代码(别问我为啥不要AndroidKiller,jeb转换出的java确实准确一…
T1 法阵 解题思路 原题3100,张口放 T1(出题人原话) 思维题,合法的情况其实就是上下两个梯形拼起来的样子. 他们的边界都是在 \(i\) 轴上面,但是不能相交. 于是我们可以尝试两者相交的纵坐标,再枚举左边梯形的下边界一级右边梯形的上边界,对于答案的话再乘上一个二. \[\displaystyle\sum_{i=1}^{n-1}\sum_{i=1}^{m-1}\sum_{k=j+1}^{m}\binom{i+j-1}{i}\times\binom{n-i+m-k}{n-i}\times…
121题目描述: 解题:记录浏览过的天中最低的价格,并不断更新可能的最大收益,只允许买卖一次的动态规划思想. class Solution { public: int maxProfit(vector<int>& prices) { if(prices.size() == 0) return 0; int min_prices = prices[0]; int max_profit = 0; for(int i = 1 ; i < prices.size(); i++ ){ if…
The n-queens puzzle is the problem of placing n queens on an n×n chessboard such that no two queens attack each other. Given an integer n, return all distinct solutions to the n-queens puzzle. Each solution contains a distinct board configuration of…
2020 网鼎杯WP 又是划水的一天,就只做出来4题,欸,还是太菜,这里就记录一下做出的几题的解题记录 AreUSerialz 知识点:反序列化 打开链接直接给出源码 <?php include("flag.php"); highlight_file(__FILE__); class FileHandler { protected $op; protected $filename; protected $content; function __construct() { $op…
P1436 棋盘分割 题目描述 将一个8*8的棋盘进行如下分割:将原棋盘割下一块矩形棋盘并使剩下部分也是矩形,再将剩下的两部分中的任意一块继续如此分割,这样割了(n-1)次后,连同最后剩下的矩形棋盘共有n块矩形棋盘.(每次切割都只能沿着棋盘格子的边进行) 原棋盘上每一格有一个分值,一块矩形棋盘的总分为其所含各格分值之和.现在需要把棋盘按上述规则分割成n块矩形棋盘,并使各矩形棋盘总分的平方和最小. 请编程对给出的棋盘及n,求出平方和的最小值. 输入输出格式 输入格式: 第1行为一个整数n(1 <…
棋盘问题 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 51262 Accepted: 24785 Description 在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别.要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可行的摆放方案C. Input 输入含有多组测试数据. 每组数据的第一行是两个正整数,n k,用一个空格隔开,表示了将在一…
题目描述 国际象棋是世界上最古老的博弈游戏之一,和中国的围棋.象棋以及日本的将棋同享盛名.据说国际象棋起源于易经的思想,棋盘是一个 8×8 大小的黑白相间的方阵,对应八八六十四卦,黑白对应阴阳. 而我们的主人公小Q,正是国际象棋的狂热爱好者.作为一个顶尖高手,他已不满足于普通的棋盘与规则,于是他跟他的好朋友小W决定将棋盘扩大以适应他们的新规则. 小Q找到了一张由 N×M 个正方形的格子组成的矩形纸片,每个格子被涂有黑白两种颜色之一.小Q想在这种纸中裁减一部分作为新棋盘,当然,他希望这个棋盘尽可能…