一开始用pii保存dp类型,写的很长,还是WA了= =。。

  然后参考了一下别人的博客,重新写了一发(似乎是岐哥的博客233)。

  代码如下:

 #include <stdio.h>
#include <algorithm>
#include <string.h>
#include <iostream>
#include <string>
#include <vector>
#include <map>
using namespace std;
const int N = + ; int n;
map<string,int> M;
vector<int> G[N];
int tot = ;
int dp[N][];
void dfs(int u)
{
dp[u][] = ;
dp[u][] = ;
for(int i=;i<G[u].size();i++)
{
int v = G[u][i];
dfs(v);
dp[u][] += max(dp[v][], dp[v][]);
dp[u][] += dp[v][];
}
} int main()
{
while(scanf("%d",&n) == && n)
{
for(int i=;i<=n;i++) G[i].clear();
tot = ;
M.clear(); string boss;
cin >> boss;
M[boss] = ++tot;
for(int i=;i<n;i++)
{
string a,b;
cin >> a >> b;
if(M[a] == ) M[a] = ++tot;
if(M[b] == ) M[b] = ++tot;
int u = M[a], v = M[b];
G[v].push_back(u);
} dfs();
printf("%d ",max(dp[][], dp[][]));
int flag = dp[][] != dp[][];
for(int i=;i<=n&&flag;i++)
{
if(dp[i][] < dp[i][]) continue;
for(int j=;j<G[i].size()&&flag;j++)
{
int v = G[i][j];
if(dp[v][] == dp[v][])
{
flag = ;
break;
}
}
}
puts(flag ? "Yes" : "No");
}
return ;
}

  想说明的一点是,博客里面的判断是否有多种可能的if条件应当是dp[i][0] >= dp[i][1],虽然两者都能AC,但是我觉得这样更加妥当一些。

最新文章

  1. ASP.NET Core应用的错误处理[2]:DeveloperExceptionPageMiddleware中间件如何呈现&ldquo;开发者异常页面&rdquo;
  2. hive 表分区操作
  3. Java,double类型转换成String,String装换成double型
  4. ORACLE常用SQL优化hint语句
  5. [转]ionic 通过PouchDB + SQLite来实现app的本地存储(Local Storage)
  6. HTML兼容性设置
  7. JAVA应用apache httpclient探测http服务
  8. (转)Salesforce的440亿美金并购宣告企业软件市场进入3.0互联网化时代
  9. ubuntu 配置android开发环境
  10. asp.net微信开发第三篇----自定义会话管理
  11. linux命令积累(Ubuntu)
  12. Http学习之使用HttpURLConnection发送post和get请求(3)
  13. YOLOv3:训练自己的数据(附优化与问题总结)
  14. Centos7 出现Welcome to emergency mode!
  15. SQL 的约束
  16. ubuntu下nodejs源码安装
  17. IE9中ajax请求成功后返回值却是undefined
  18. Linux下Socket网络编程
  19. 拯救者14ISK添加ssd6记录
  20. SQL Server 获取满足条件的每个条件下的前N条数据

热门文章

  1. (八)springmvc之静态资源的访问。
  2. pyodbc报错pyodbc.InterfaceError
  3. tasklist、taskkill命令使用
  4. 媲美pandas的数据分析工具包Datatable
  5. 使用HTML CSS制作简易三角形和旗帜
  6. 阮一峰:jQuery官方基础教程笔记
  7. stm32 按键操作
  8. pymysql 1064, &#39;You have an error in your SQL syntax; check the manual that corresponds to
  9. ubuntu 14.04 登录 界面 root
  10. 搭建一个jumpserver跳板机