CodeForces 699C - Vacations】的更多相关文章

题目链接:http://codeforces.com/problemset/problem/699/C C. Vacations time limit per test1 second memory limit per test256 megabytes Problem Description Vasya has n days of vacations! So he decided to improve his IT skills and do sport. Vasya knows the fo…
题目链接: http://codeforces.com/problemset/problem/698/A http://codeforces.com/problemset/problem/699/C 题目大意: N天,A(健身)或B(做比赛)或休息,每天都有4种情况,A可行B可行,A可行B不行,A不行B可行,AB都不行. 每天选择一种,不能连续两天选择同一种活动(可以连续休息),问最少休息几天. 题目思路: [动态规划] f[i][j]表示前i天,最后一天状态为j的最多休息天数(最少天数也行),…
题目链接 : http://codeforces.com/problemset/problem/698/A 题目大意: 阿Q有n天假期,假期中有三种安排 休息.健身.比赛.每天有三种选择条件: 0 健身房不开门 没有比赛 1 健身房不开门    有比赛 2 健身房开门     没有比赛  3 健身房开门   有比赛 请给阿Q 合理的安排他的假期[阿Q不能连着两天健身或者连着两天比赛],使得阿Q的休息天数最少. 解题思路: ans=n,最多休息ans天 第一天是3 则a[0]=0,ans--; 只…
题目链接:http://codeforces.com/problemset/problem/698/A 题意: 有 $n$ 天假期,每天有四种情况:0.体育馆不开门,没有比赛:1.体育馆不开门,有比赛:2.体育馆开门,没有比赛:3.体育馆开门,有比赛. 每天都可以选择一件事做:休息.去体育馆运动.打比赛. 现在有一个限制条件:不能连续两天都去体育馆,或者连续两天都打比赛.要求尽量使得休息的天数最少,求出这个天数. 题解: $f[i][0,1,2]$ 表示前 $i$ 天,第 $i$ 天休息/运动/…
要么去体育馆,要么去比赛,要么闲在家里 给出每一天体育馆和比赛的有无情况,要求连续两天不能去同一个地方 问最少闲几天 DP方程很容易看出 dp(第i天能去的地方) = min(dp(第i-1天的三种情况)) : dp(第i天呆在家里) = min(dp(第i-1天的三种情况))+1: #include <cstdio> #include <iostream> using namespace std; #define inf 0x3f3f3f3f ],ans[][],n; void…
题目链接:C. Vacations 题意:现在有n天的假期,对于第i天有四种情况: 0  gym没开,contest没开 1  gym没开,contest开了 2 gym开了,contest没开 3       gym开了,contest开了 所有题主每天可能就有三种选择,rest,do sport,do contest.题主拒绝连续两天做同样的事情.现在请你安排他的假期,使得题主休息的天数最少. 思路:tag:dp n=100的dp和暴力有什么区别... ... 第i天的三种选择得到的最少休息…
C. Vacations time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Vasya has n days of vacations! So he decided to improve his IT skills and do sport. Vasya knows the following information about…
C. Vacations time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Vasya has n days of vacations! So he decided to improve his IT skills and do sport. Vasya knows the following information about…
题目链接:http://codeforces.com/problemset/problem/698/A 题意 Vasya在n天中,有三件事情可以做,健身.比赛或者休息,但是不能连续两天都是比赛或都是但是健身,但是连续休息两天是允许的,问题是在这n天中,Vasya最少可以休息几天? 0代表休息,1代表比赛,2代表健身,3可以代表比赛也可以代表健身 思路 用数组dp[i][j]表示第i天做活动j,数值表示最小休息的天数 状态转移方程: 对于0:dp[i][0]=min(dp[i-1][0],min(…
题目链接:http://codeforces.com/contest/699/problem/C 题解: 1.可知每天有三个状态:1.contest ,2.gym,3.rest. 2.所以设dp[i][j](i:1~n,j:1~3)为第i天进行j活动的最小休息天数. 3.状态转移: contest:如果当天可以进行,从上一天的gym和rest中转移过来,取最小值.否者置为无限大INF. gym:如果当天可以进行,从上一天的contest和rest中转移过来, 取最小值.否则置为无限大INF. r…