cows专题

usaco 1.2 Milking Cows(类hash表)

第一种思路被卡了时间 到第二种思路的时候就觉得第一种思路太坑爹了 代码又长又臭还超时!! 第一种思路:我不知道为什么最后一组数据会被卡 超时超了0.2s左右 大概想法是 快排加一个遍历 先将开始时间按升序排好 然后开始遍历比较 1 若 下一个开始beg[i] 小于 tem_end 则说明本组数据与上组数据是在连续的一个区间 取max( ed[i],tem_end ) 2 反之 这个

P2858 [USACO06FEB] Treats for the Cows G/S 题解

P2858 题意 给一个数组。每天把最左或者最右的东西卖掉,第 i i i个东西,第 d a y day day天卖出的价格是 a [ i ] ∗ d a y a[i]*day a[i]∗day。 记忆化搜索 void dfs(int l,int r,int day,ll sum){if(v[l][r]>=sum)return;v[l][r]=sum;if(l>r)//这就是dp答案{

2181:Jumping Cows

网址如下: OpenJudge - 2181:Jumping Cows (这是我拿去翻译的版本) 简单来说,题目要求我们求出一个子串,在奇数位的数加,偶数位的数减,求总的最大值 用贪心就可以做了 在波峰的时候加,波谷的时候减 代码如下: #include<cstdio>const int maxP = 150000;int P, val[maxP], ans;int

poj 2186 Popular Cows(tarjan + 强连通分量 + 缩点)

http://poj.org/problem?id=2186 题意:有n头牛,m个膜拜关系,膜拜关系是不可逆的而且是单向传递的,比如A膜拜B,B膜拜C,那么A也膜拜C,但B不一定膜拜A。最后问有多少头牛满足条件:除了它自己,其他所有的牛都膜拜它。 思路: 问题可以抽象为:给定一个有向图,n个顶点,m条有向边,有多少个顶点满足:其他所有的点都能到达该点。 首先假如图G是一个有向树

POJ 2186 Popular Cows (强连通分量)

题目地址:POJ 2186 先用强连通分量缩点,然后形成一棵树。我第一次用的判定条件是入度为分量数-1。虽然这种情况下确实正确。但是在树中也是有间接关系的。这个条件并不是充分必要条件。正确的做法是逆序建树,然后找根结点。而且根结点有且只有一个才可以。所以转化成了找出度为0的分量。 代码如下: #include <iostream>#include <string.h>#include

UVA10491 - Cows and Cars(概率)

UVA10491 - Cows and Cars(概率) 题目链接 题目大意:给你n个门后面藏着牛,m个门后面藏着车,然后再给你k个提示,在你作出选择后告诉你有多少个门后面是有牛的,现在问你作出决定后,根据提示改变你的选择能够成功的概率。 解题思路:简单的概率题,题目意思懂了应该没什么问题。 代码: #include <cstdio>#include <cstring>int

Bulls and Cows问题及解法

问题描述: You are playing the following Bulls and Cows game with your friend: You write down a number and ask your friend to guess what the number is. Each time your friend makes a guess, you provide

POJ-2186 Popular Cows 强连通 + 缩点

http://poj.org/problem?id=2186 我们求强连通分量时,给每个顶点做一个标记,标记该顶点属于哪个强联通分量,然后属于同一个强连通分量的点就可以看作同一个点了。这就是所谓的“缩点”   此题用了个定理 :有向无环图(DAG)中,从任意一个点出发,必定可以到达某一个出度为0的点。   这个不用证明,直观想一下就行了。  因为无环,所以从一个点出发,必

洛谷 P2868 观光奶牛Sightseeing Cows 01分数规划 + 最短路判负环

按照惯例,不想写题目大意,转一个 https://blog.csdn.net/liangzihao1/article/details/79716799 题目描述 Farmer John has decided to reward his cows for their hard work by taking them on a tour of the big city! The cows mu

poj(3186)Treats for the Cows

/*题意:给定n个数每次可以从头或者尾取出数据 于是按取出来得顺序,就可以排成一个数列, 假设这个数列为  a1,a2,a3,a4.......an 现在我们假设按照取出来的顺序有一个权值 w=a1*1+a2*2+a3*3+....an*n 现在需要编程求出,如何控制取数的顺序,让w的值最大   思路: 这个题是动态规划,其实要想到这个动态转移方程就简单了, 可以开一个二维的数组用来存当前的最大

hdu(2713)Jumping Cows

两种方法解决这个问题。。 背包方法;; #include<stdio.h> #include<string.h> int a[166000]; int dp[166600][3]; int max(int a,int b) {  a=a>b?a:b;  return a; } int main() {  int m,n,i,k;  while(scanf("%d",&m)!=EOF)  {

uva 10491 - Cows and Cars(概率)

题目连接:uva 10491 - Cows and Cars 题目大意:给出a,b和c,表示有a + b 个门, a个后面是牛, b个后面是车, 然后你从中选一个门,之后有一个知情人帮你打开c个后面是牛的门(因为1≤c< a,所以就算第一次选中牛,知情人还是可以打开c个门),然后你在没有打开的门中选一个,问说第二次选得门后面是车的概率。 解题思路:问题可以分成两种情况: 1)第一

poj 3186 Treats for the Cows

题目链接:http://poj.org/problem?id=3186 Treats for the Cows Time Limit: 1000MS Memory Limit: 65536KTotal Submissions: 5731 Accepted: 2964 Description FJ has purchased N (1 <= N <= 2000)

POJ 2456 Aggressive cows__二分

Description Farmer John has built a new long barn, with N (2 <= N <= 100,000) stalls. The stalls are located along a straight line at positions x1,…,xN (0 <= xi <= 1,000,000,000). His C (2 <= C <=

B - Bulls and Cows CodeForces - 63C(构造,模拟)

Input The first input line contains an integer n (1 ≤ n ≤ 10) which represents the number of already made guesses. Then follow n lines in the form of “ai bi ci”, where ai is the i-th experimental numb

POJ 2387 Til the Cows Come Home【最短路】【模板题】

POJ 2387 Til the Cows Come Home 贝西在牧场,他想回谷仓,在John叫他早上挤奶之前,尽多的睡美容觉。贝西想尽快回去。 John的牧场有N个地标,地标1是谷仓(终点),地标N是贝西所在的苹果树林(起点)。牛通过牧场里T条双向的牛道。 贝西对自己的航行能力不自信,所以一旦开始,她总是在牛道行走。 根据地标之间的小径,确定贝西最少走多远才能回到谷仓。保证有这样的路线存

SCC::poj2186 Popupar Cows poj2553 The Bottom of A Graph

关于SCC的知识与算法,参见《SCC》一文。这两道题本质是一样的,细微的区别只在于输出而已。夜鱼只给我做前一道题,大概是看到我做的《图算法》的小结里面没有SCC的地位,想给我提个醒。后来我在那篇小结里面补上了SCC,顺便也对SCC的知识梳理了一遍,觉得手痒,网上查了一下还有poj2553也是关于SCC的,但没想到poj2553一题是赤裸裸的SCC,但这道题我却WA了几次,原因是在输出的时候没有“按

poj 3348 Cows (叉积计算凸包面积)

题意挺简单的,求凸包的面积然后除于50即可。 面积:固定某一点,找枚举凸包中的点,用叉积求即可: #include <iostream>#include <cstdio>#include <cmath>#include <stack>#include <algorithm>#define PI acos(-1)#define MAXN 1000+10using namespa

uva 10491 Cows and Cars

原题: In television contests, participants are often asked to choose one from a set of or doors for example, one or several of which lead to different prizes. In this problem we will deal with a speci

A - Til the Cows Come Home (dijkstra算法)

推荐Dijkstra算法讲解:http://blog.51cto.com/ahalei/1387799 A - Til the Cows Come Home  Bessie is out in the field and wants to get back to the barn to get as much sleep as possible before Farmer John wa

1.2.1 Milking Cows

我写的很麻烦…… #include<iostream>#include<fstream>#include<algorithm>using namespace std;struct Node{int s;int e;}node[5001];bool cmp(Node a, Node b)//排序 {if( a.s<b.s) return 1;else if( a.s

P3047 [USACO12FEB]Nearby Cows G(树形dp)

[USACO12FEB]Nearby Cows G - 洛谷https://www.luogu.com.cn/problem/P3047一个很有趣的树形dp 我们可以设状态f【i】【j】, i为当前根,j为距离为j时的点权和 首先我们可以取1为根跑一遍dfs,将以i为根的子树的点权和记录下即用儿子更新父亲,此时1肯定已经求完了,我们就可以再一次从1开始跑dfs用父亲去更新儿子。 #defin

[洛谷-P3047] [USACO12FEB]Nearby Cows G(树形DP+换根DP)

[洛谷-P3047] [USACO12FEB]Nearby Cows G 一、问题题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 提示 二、分析1、状态表示2、状态转移3、换根DP 三、代码 一、问题 题目描述 Farmer John has noticed that his cows often move between nearby fields. Taki

LeetCode Bulls and Cows

题目: You are playing the following Bulls and Cows game with your friend: You write a 4-digit secret number and ask your friend to guess it. Each time your friend guesses a number, you give a hint.

leetcode:(299) Bulls and Cows(java)

题目: You are playing the following Bulls and Cows game with your friend: You write down a number and ask your friend to guess what the number is. Each time your friend makes a guess, you provide a hin

poj 2430 Lazy Cows

poj 2430 Lazy Cows 分享个讲的很好的博客:http://blog.csdn.net/wings_of_liberty/article/details/7521178