• 贪心贪不过,暴力搜就完事了
  • 注意不连通情况
    1. #include<iostream>
    2. #include<sstream>
    3. #include<cstdio>
    4. #include<cstdlib>
    5. #include<string>
    6. #include<cstring>
    7. #include<algorithm>
    8. #include<functional>
    9. #include<iomanip>
    10. #include<numeric>
    11. #include<cmath>
    12. #include<queue>
    13. #include<vector>
    14. #include<set>
    15. #include<map>
    16. #include<cctype>
    17. const double PI = acos(-1.0);
    18. const int INF = 0x3f3f3f3f;
    19. const int NINF = -INF - 1;
    20. const int maxn = 1e5 + 5;
    21. typedef long long ll;
    22. #define MOD 1000000007
    23. using namespace std;
    24. int n, m, st;
    25. int vis[maxn];
    26. int rec = 0;
    27. typedef pair<int, int> P;
    28. struct node
    29. {
    30. int next, cost;
    31. int flag;
    32. };
    33. vector<node> G[maxn];
    34. void bfs()
    35. {
    36. queue<P> q;
    37. q.push(P(1, st));
    38. while(q.size())
    39. {
    40. P p = q.front();
    41. q.pop();
    42. for(int i = 0; i < G[p.first].size(); ++i)
    43. {
    44. node tmp = G[p.first][i];
    45. int mp;
    46. if(!tmp.flag) mp = p.second - tmp.cost;
    47. else mp = p.second + tmp.cost;
    48. if (vis[tmp.next] == -1) {
    49. vis[tmp.next] = mp;
    50. q.push(P(tmp.next, vis[tmp.next]));
    51. }
    52. else{
    53. if(vis[tmp.next] != mp) {
    54. rec = 1;
    55. break;
    56. }
    57. }
    58. }
    59. if(rec) break;
    60. }
    61. }
    62. int main()
    63. {
    64. memset(vis, -1, sizeof(vis));
    65. scanf("%d %d %d", &n, &m, &st);
    66. for(int i = 0; i < m; ++i)
    67. {
    68. int x, y, w;
    69. scanf("%d %d %d", &x, &y, &w);
    70. G[x].push_back(node{y, w, 0});
    71. G[y].push_back(node{x, w, 1});
    72. }
    73. vis[1] = st;
    74. bfs();
    75. // for(int i = 1; i <= n; ++i)
    76. // {
    77. // cout << vis[i] << ' ';
    78. // }
    79. // cout << endl;
    80. for(int i = 1; i <= n; ++i)
    81. {
    82. if(vis[i] == -1)
    83. {
    84. rec = 1;
    85. break;
    86. }
    87. }
    88. if(rec)
    89. {
    90. cout << "QAQ";
    91. }
    92. else
    93. {
    94. cout << "QWQ" << endl;
    95. for(int i = 1; i <= n; ++i)
    96. {
    97. cout << vis[i] << endl;
    98. }
    99. }
    100. return 0;
    101. }

YSU小吃街的更多相关文章

  1. 2016级算法第三次上机-A.Bamboo的小吃街

    A Bamboo的小吃街 分析 经典的两条流水线问题,题目描述基本类似于课件中的流水线调度,符合动态规划最优子结构性质 关键的动态规划式子为: dp[0][j] = min(dp[0][j - 1], ...

  2. python基础 Day01 练习题

    1 字符串格式化 #!/urs/bin/env python name = input("Name: ") age = int(input("Age: ")) ...

  3. stanford-parser使用说明

    主意:本说明文档针对stanford-parser-full-2014-06-16.不同版本的parser,其功能和表示形式可能会略有不同.但总体不会有太大差异 Stanford parser是一款较 ...

  4. 写了一个复杂的sql语句

    $sp_sql = "select sp_ProductNo, sp_ProductName,sp_Standard,sp_Unit,sum(sp_Amount) as amount fro ...

  5. 漫谈Java IO之基础篇

    Java的网络编程如果不是专门搞服务器性能开发或者消息分发,几乎可能涉及不到.但是它却是面试找工作必问的一个知识点,涵盖的知识体系也非常广泛,从Java底层IO原理到操作系统内核组成,再到网络TCP. ...

  6. hsdfz -- 6.17 -- day2

    今日依旧康复…… 当天晚上被老师拉去小吃街了,晚上回来精力憔悴,所以并没有当天写 反正就惨,因为估错复杂度,期望得分100分最后结果20分 (我的复杂度是nlog^2n的,正确性有保障,稳! 事后:还 ...

  7. NOI2018 游记

    day-2 飞向长沙 上午收拾了收拾东西,下载了动画<爱吃拉面的小泉同学>的前五集. 吃过午饭,就准备坐车去运城机场.高铁飞速,转眼间就到了.我没坐过几次飞机,而且比较恐飞,就很难受qwq ...

  8. 在西雅图华盛顿大学 (University of Washington) 就读是怎样一番体验?

    http://www.zhihu.com/question/20811431   先说学校.优点: 如果你是个文青/装逼犯,你来对地方了.连绵不断的雨水会一下子让写诗的感觉将你充满. 美丽的校园.尤其 ...

  9. python-网络编程-01

    我们常说的计算机网络通信,值得是两台,或者多台计算机间,进行数据传输. 从计算机网络发展至今,人们使用了很多协议,但是最常用的还是tcp/ip协议,实际上这是一组协议. 当然使用python做网络编程 ...

随机推荐

  1. 【uva 1617】Laptop(算法效率--贪心,2种理解)

    题意:有N条长度为1的线段,要求使每条线段分别在相应区间,且"空隙"数目最小.输出"空隙"数.(1≤N≤100000) 解法:(P.S.我这题竟做了2个多小时, ...

  2. Codeforces Round #695 (Div. 2) C. Three Bags (贪心,思维)

    题意:有三个背包,每个背包里都用一些数字,你可以选择某一个背包的数字\(a\),从另外一个背包拿出\(b\)(拿出之后就没有了),然后将\(a\)替换为\(a-b\),你可以进行任意次这样的操作,使得 ...

  3. zoj3471 Most Powerful

    Recently, researchers on Mars have discovered N powerful atoms. All of them are different. These ato ...

  4. PowerShell随笔4---变量

    全局变量 输入$global:后按ctrl+space,我们就可以看到所有的全局变量. 比如我们可以查看PowerShell的版本: 我们可以在在编写脚本代码的时候使用这些变量,globle可以省略, ...

  5. python 迭代器 iter多次消费

    问题 Python 中的迭代器是我们经常使用的迭代工具, 但其只能消费一次,再次消费便会出现 StopIteration 报错. 解决方案 封装了一个类,当迭代器使用完后再次初始化. 代码 class ...

  6. nginx+lua实现灰度发布/waf防火墙

    nginx+lua 实现灰度发布 waf防火墙 课程链接:[课程]Nginx 与 Lua 实现灰度发布与 WAF 防火墙(完)_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili 参考博客 Nginx ...

  7. five86-1 (OpenNetadmin RCE+cp命令提权+crunch生成密码字典)

    Vulnhub-Five86-1 实验环境 kali攻击机ip:192.168.56.116 Five86-1靶机ip:192.168.56.121 知识点及工具 nmap扫描 john爆破 Open ...

  8. Stack Overflow Skill IQ Testing All In One

    Stack Overflow Skill IQ Testing All In One Pluralsight IQ | Stack Overflow https://www.pluralsight.c ...

  9. HTML5 动画效果的多种实现方式

    HTML5 动画效果的多种实现方式 1.  CSS3 transform + transition https://www.w3.org/TR/css-transforms-1/ https://ww ...

  10. window.URL.createObjectURL

    window.URL.createObjectURL https://html5.xgqfrms.xyz/Canvas/safety-canvas.html var video = document. ...