随笔分类 - 模拟
摘要:水A - Magic Spheres这题也卡了很久很久,关键是“至少”,所以只要判断多出来的是否比需要的多就行了。#include using namespace std;#define lson l, mid, o = less) puts ("Yes"); else puts ("No"); ...
阅读全文
摘要:题目传送门题意:给了若干个图形,问每个图形与哪些图形相交分析:题目说白了就是处理出每个图形的线段,然后判断是否相交。但是读入输出巨恶心,就是个模拟题加上线段相交的判断,我第一次WA不知道输出要按字母序输出,第二次WA是因为忘记多边形的最后一条线段,还好找到了,没有坚持的话就不会AC了。/******...
阅读全文
摘要:题目传送门题意:魔方最多旋转n次,问最多能使多少面颜色相同分析:6种状态(3种旋转方式*顺逆方向,其他对称的!),首先先打个表,然后很愉快的DFS。自己写的时候费劲脑汁,代码很长,还TLE了。。。。/************************************************* ...
阅读全文
摘要:水A - Vasya the Hipster/************************************************* Author :Running_Time* Created Time :2015/9/28 星期一 16:58:13* File Name...
阅读全文
摘要:题目传送门题意:意思很简单,找一个最接近D且比D大的数,满足它的二进制表示下的1的个数在[S1, S2]之间分析:从D + 1开始,若个数小于S1,那么从低位向高位把0替换成1直到S1就是最小值,否则往更大的数去找,此时目标是减少1的数量,可以优化, +lowbit (D),因为+小于lowbit ...
阅读全文
摘要:题目传送门题意:A队和B队踢球,已知一场比赛A和B的得分情况,问A最小再得几分就能胜利还有最多能的几分还能给B队一丝翻盘的希望。规则如下: 1. 总分数相等的情况下,在客场得分高的获胜,如果还相等,那么两者都可能获胜 2. 总分数高的获胜分析:首先假设给出home的分数,A的记为x1, ...
阅读全文
摘要:题目传送门题意:一个长度L的管子,起点在0。n次操作,0 p表示在p的位置放上蛋糕,1表示去吃掉最近的蛋糕(如果左右都有蛋糕且距离相同,那么吃同方向的蛋糕),问最终走了多少路程分析:用multiset来保存蛋糕的位置,以当前的位置进行二分查找相邻的蛋糕的位置,模拟这个过程。当然也可以用线段树单点更新...
阅读全文
摘要:题目传送门 1 /* 2 题意:一串字符串,问要最少操作数使得成为合法的后缀表达式 3 贪心+模拟:数字个数 >= *个数+1 所以若数字少了先补上在前面,然后把不合法的*和最后的数字交换,记录次数 4 岛娘的代码实在难懂啊~ 5 */ 6 /********...
阅读全文
摘要:题目传送门 1 /* 2 模拟:这题没啥好说的,把指针转成角度处理就行了,有两个注意点:结果化简且在0~180内;小时13点以后和1以后是一样的(24小时) 3 模拟题伤不起!计算公式在代码内(格式:hh/120, mm/120, ss/120) 4 */ 5 /******...
阅读全文
摘要:题目传送门 1 /* 2 题意:刷墙,斜45度刷红色或蓝色,相交的成绿色,每次刷的是连续的一段,知道最终结果,问最少刷几次 3 模拟+思维:模拟能做,网上有更巧妙地做法,只要前一个不是一样的必然要刷一次,保证是最小的,脑洞大 4 */ 5 #include 6 #include ...
阅读全文
摘要:题目传送门 1 /* 2 模拟:看懂题意,主要是碰壁后的转向,笔误2次 3 */ 4 #include 5 #include 6 #include 7 #include 8 using namespace std; 9 10 const int MAXN = 1e3 + 10;11 ...
阅读全文
摘要:题目传送门 1 /* 2 模拟:找到规律分别输出就可以了,简单但是蛮有意思的 3 */ 4 #include 5 #include 6 #include 7 #include 8 #include 9 using namespace std;10 11 const int MAXN...
阅读全文
摘要:题目传送门 1 /* 2 题意;从原点出发,四个方向,碰到一个点向右转,问多少次才能走出,若不能输出-1 3 模拟:碰到的点横坐标相等或纵坐标相等,然而要先满足碰到点最近, 4 当没有转向或走到之前走过的点结束循环。dir数组使得代码精简巧妙 5 对点离原点排...
阅读全文
摘要:题目传送门 1 /* 2 模拟:简单的照着规则做就可以了,把各种情况考虑到,虽然比赛写的丑了点,但能1Y还是很开心的:) 3 */ 4 #include 5 #include 6 #include 7 #include 8 #include 9 using namespace st...
阅读全文
摘要:题目传送门 1 /* 2 模拟/字符串处理:主要是对*的处理,先把乘的预处理后再用加法,比如说是:1+2*3+4 = 1+..6+4 = 11 3 */ 4 #include 5 #include 6 #include 7 #include 8 #include ...
阅读全文
摘要:题目传送门 1 /* 2 模拟水题,排序后找出重复的ip就可以了 3 */ 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 using namespace std;11 12 const in...
阅读全文
摘要:题目传送门 1 /* 2 模拟:这就是一道模拟水题,看到标签是贪心,还以为错了呢 3 题目倒是很长:) 4 */ 5 #include 6 #include 7 #include 8 #include 9 #include 10 using namespace std;11 ...
阅读全文
摘要:题目传送门 1 /* 2 题意:两堆牌,每次拿出上面的牌做比较,大的一方收走两张牌,直到一方没有牌 3 queue容器:模拟上述过程,当次数达到最大值时判断为-1 4 */ 5 #include 6 #include 7 #include 8 #include 9 #incl...
阅读全文
摘要:题目传送门 1 /* 2 模拟水题,排序后找出重复的ip就可以了 3 */ 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 using namespace std;11 12 const in...
阅读全文
摘要:题目传送门 1 /* 2 题意:比较型号的大小 3 模拟:坑点在长度可能为5,此时设为'A' 4 */ 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 #inc...
阅读全文