http://codeforces.com/contest/793/problem/B 题意:一个地图,有起点和终点还有障碍点,求从起点出发到达终点,经过的路径上转弯次数是否能不超过2. 思路: 直接dfs,但是要优化一下,用vis[x][y][dir]来记录在(x,y)并且方向为dir时的最少转弯数,这样在dfs的时候可以剪掉一些不符合的情况. #include<iostream> #include<algorithm> #include<cstring> #incl…
A. Oleg and shares time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Oleg the bank client checks share prices every day. There are n share prices he is interested in. Today he observed that e…
http://codeforces.com/contest/793/problem/D 题意:给出一些点和他们之间的距离,是有向的,这些点从1~n顺序排列,现在选出k个点组成一条路径,使他们之间的距离最短,要求是在路径中,一个被访问过的点不会经过两次或以上. 比如,你访问了1~6这条边,那么你已经访问了1和6这两个点,接下来你就不可以访问5~7这条边了,因为他们之间有6这个点. 思路:区间dp题. 区间dp的话,递推和记忆化搜索都是可以的. d[i][l][r][dir]表示当前访问第i次时,在…
传送门 题意 给出一个矩形的左下角和右上角的坐标,给出n个点的初始坐标和运动速度和方向,询问是否存在一个时间使得所有点都在矩形内,有则输出最短时间,否则输出-1 分析 对于每个点如果运动过程中都不在矩形内,输出-1 每个点的横纵运动分开考虑,判断处理得到点到达矩形边界的时间段,取交集,具体见代码 trick 1.all the mice that are strictly inside the mousetrap,即在矩形边界点不算入矩形 2.卡精度 代码 #include <bits/stdc…
这次的前三题挺简单的,可是我做的不快也不对. A. Bank Robbery time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output A robber has attempted to rob a bank but failed to complete his task. However, he had managed to open…
A: 思路:就是找b,c之前有多个s[i] 代码: #include<stdio.h>#define ll long longusing namespace std;ll a,b,c;int n;int s[110000];int main(){ while(~scanf("%lld%lld%lld",&a,&b,&c)) { scanf("%d",&n); int sum=0; for(int i=0;i<n;i+…
题目链接:http://codeforces.com/contest/722/problem/D 1 #include <bits/stdc++.h> #include <iostream> #include <queue> #include <stdio.h> #include <string.h> #include <algorithm> #include <string> #include <math.h>…
A. Broken Clock time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output You are given a broken clock. You know, that it is supposed to show time in 12- or 24-hours HH:MM format. In 12-hours format…
http://codeforces.com/contest/722/problem/D 题目大意:给你一个没有重复元素的Y集合,再给你一个没有重复元素X集合,X集合有如下操作 ①挑选某个元素*2 ②某个元素*2+1 问:找到一个X集合,里面的元素与Y的元素可以相互转换,且X的max要尽量小. 思路:二分答案找就好了.从Y开始进入,不需要考虑奇偶数,反正每次都/2就行了. //看看会不会爆int!数组会不会少了一维! //取物问题一定要小心先手胜利的条件 #include <bits/stdc++…
http://codeforces.com/contest/722/problem/C 题目大意:给你一个串,每次删除串中的一个pos,问剩下的串中,连续的最大和是多少. 思路一:正方向考虑问题,那么就线段树+分类讨论一下就好了,然后代码中flag表示能否转移 //看看会不会爆int!数组会不会少了一维! //取物问题一定要小心先手胜利的条件 #include <bits/stdc++.h> using namespace std; #define LL long long #define A…