Codeforces 522A Reposts 题解
2017-05-12 13:31
302 查看
题意
有一个笑话,刚开始只有一人知道,每一次由一个已经知道的人讲给一个不知道的人,问最长的传递链有多长思路
用map将人名映射成数字,然后进行dfs代码
#include <cstdio> #include <iostream> #include <string> #include <map> #include <vector> using namespace std; map<string,int> hash; int mp[205][205]; int n,ans; string change(string s) { for(int i=0;i<s.length();i++) if(s[i]>='A'&&s[i]<='Z') s[i]-='A'-'a'; return s; } void dfs(int x,int from,int step) { if(step>ans) ans=step; for(int i=1;i<=n+1;i++) if(mp[x][i]==1&&i!=from) dfs(i,x,step+1); return; } int main() { string s1,s2; cin>>n; cin>>s1; cin>>s2; cin>>s2; hash[change(s1)]=1; hash[change(s2)]=2; mp[1][2]=1; mp[2][1]=1; for(int i=1;i<n;i++) { cin>>s1; cin>>s2; cin>>s2; hash[change(s1)]=i+2; mp[hash[change(s2)]][i+2]=1; mp[i+2][hash[change(s2)]]=1; } dfs(2,0,1); cout<<ans<<endl; return 0; }
相关文章推荐
- 【CodeForces】CodeForces Round #460 (Div. 2) 题解
- 小白题解 Codeforces 798A Mike and palindrome
- 第1周周赛——开学第一课(题解)——出自(Codeforces Good Bye 2015 和 HDU1717)
- Codeforces 813B The Golden Age 题解
- Codeforces 821B Okabe and Banana Trees 题解
- Codeforces 464 C. Substitutes in Number 动态规划法题解
- Codeforces 316C2 题解 (网络流-最小费用最大流)
- codeforces 366D Dima and Trap Graph 题解(搜索+剪枝or二分+枚举)
- CodeForces 444B DZY Loves FFT 题解
- Codeforces 813C The Tag Game 题解
- Codeforces 513F2 题解 (网络流-最大流 二分 BFS)
- CodeForces - 149D Coloring Brackets 详细题解(递归区间DP+dfs染色,好题)
- 题解___CodeForces 558A___2015_10_个人赛_1001
- Codeforces 343D Water Tree 题解&代码
- CodeForces 833B 详细题解(貌似是四边形优化)
- Codeforces 803A Maximal Binary Matrix 题解
- 7_6_R题 Bad Luck Island题解[Codeforces 540D](概率DP)
- 小白题解 Codeforces 798B Mike and strings
- 小白题解 Codeforces 1A Theatre Square
- 【Codeforces】【Coder-Strike 2014 - Finals】【E Cup Trick】【题解】