B:分析序列 构造树(优先队列)

  1. #include <bits/stdc++.h>
  2. #include <cstring>
  3. #include <iostream>
  4. #include <algorithm>
  5. #define foror(i,a,b) for(i=a;i<b;i++)
  6. #define foror2(i,a,b) for(i=a;i>b;i--)
  7. #define EPS 1.0e-8
  8. #define PI acos(-1.0)
  9. #define INF 3000000000
  10. #define MOD 1000000009
  11. #define mem(a,b) memset((a),b,sizeof(a))
  12. #define TS printf("!!!\n")
  13. #define lson o<<1, l, m
  14. #define rson o<<1|1, m+1, r
  15. //using ll = long long;
  16. //using ull= unsigned long long;
  17. //std::ios::sync_with_stdio(false);
  18. using namespace std;
  19. //priority_queue<int,vector<int>,greater<int>> que;
  20. typedef long long ll;
  21. vector<int> tree[];
  22. int visit[];
  23. int pop=;
  24. int pop1=;
  25. int scan[];
  26. priority_queue<int, vector<int>, greater<int> > leaf;
  27. int maxn=;
  28. int main()
  29. {
  30. //freopen("in.txt", "r", stdin);
  31. //freopen("out.txt", "w", stdout);
  32. int now;
  33. //TS;
  34. while(scanf("%d ",&now)!=EOF)
  35. {
  36. scan[++pop]=now;
  37. maxn=max(maxn,now);
  38. visit[now]++;
  39. }
  40. //cout<<maxn<<endl;
  41. visit[maxn]++;
  42. //TS;
  43. for(int i=;i<=maxn;i++)
  44. {
  45. if(visit[i]==)
  46. {
  47. leaf.push(i);
  48. }
  49. }
  50. while(!leaf.empty())
  51. {
  52. int cur;
  53. cur= leaf.top();
  54. leaf.pop();
  55. tree[scan[pop1]].push_back(cur);
  56. //cout<<scan[pop1]<<"pushin:"<<cur<<endl;
  57. tree[cur].push_back(scan[pop1]);
  58. //cout<<cur<<"pushin:"<<scan[pop1]<<endl;
  59. if(--visit[scan[pop1]]==)
  60. leaf.push(scan[pop1]);
  61. pop1++;
  62. }
  63. for(int i=;i<=maxn;i++)
  64. {
  65. //printf("%d ",tree[i].size());
  66. sort(tree[i].begin(),tree[i].end());
  67. printf("%d:",i);
  68. for(int j=;j<(int)tree[i].size();j++)
  69. {
  70. printf(" %d",tree[i][j]);
  71. }
  72. printf("\n");
  73. }
  74. return ;
  75. }

C:求满足题意的正方形个数(二维前缀和 前缀和思想)  更难的相似的:http://agc015.contest.atcoder.jp/tasks/agc015_c

F: 打表找规律

  1. #include <bits/stdc++.h>
  2. #include <cstring>
  3. #include <iostream>
  4. #include <algorithm>
  5. #define foror(i,a,b) for(i=a;i<b;i++)
  6. #define foror2(i,a,b) for(i=a;i>b;i--)
  7. #define EPS 1.0e-8
  8. #define PI acos(-1.0)
  9. #define INF 3000000000
  10. #define MOD 1000000009
  11. #define mem(a,b) memset((a),b,sizeof(a))
  12. #define TS printf("!!!\n")
  13. #define lson o<<1, l, m
  14. #define rson o<<1|1, m+1, r
  15. //using ll = long long;
  16. //using ull= unsigned long long;
  17. //std::ios::sync_with_stdio(false);
  18. using namespace std;
  19. //priority_queue<int,vector<int>,greater<int>> que;
  20. typedef long long ll;
  21. int main()
  22. {
  23. //freopen("in.txt", "r", stdin);
  24. //freopen("out.txt", "w", stdout);
  25. int t;
  26. cin >> t;
  27. while(t--)
  28. {
  29. int s,k;
  30. scanf("%d %d",&s,&k);
  31. if(k%==)
  32. {
  33. if(s%==)
  34. {
  35. cout<<<<endl;
  36. continue;
  37. }
  38. else
  39. {
  40. cout<<<<endl;
  41. continue;
  42. }
  43. }
  44. else
  45. {
  46. /*int now=0;
  47. while(s>0)
  48. {
  49. now+=s%k;
  50. s/=k;
  51. }
  52. cout<<now<<endl;*/
  53. int now=s%(k+);
  54. if(now%==)
  55. cout<<<<endl;
  56. else
  57. {
  58. if(now==k)
  59. cout<<k<<endl;
  60. else
  61. cout<<<<endl;
  62. }
  63. }
  64. }
  65. return ;
  66. }

G:水

H:二进制分析(lucky 测试数据没有失败的也没有要求最优解的)

  1. #include <bits/stdc++.h>
  2. #include <cstring>
  3. #include <iostream>
  4. #include <algorithm>
  5. #define foror(i,a,b) for(i=a;i<b;i++)
  6. #define foror2(i,a,b) for(i=a;i>b;i--)
  7. #define EPS 1.0e-8
  8. #define PI acos(-1.0)
  9. #define INF 3000000000
  10. #define MOD 1000000009
  11. #define mem(a,b) memset((a),b,sizeof(a))
  12. #define TS printf("!!!\n")
  13. #define lson o<<1, l, m
  14. #define rson o<<1|1, m+1, r
  15. //using ll = long long;
  16. //using ull= unsigned long long;
  17. //std::ios::sync_with_stdio(false);
  18. using namespace std;
  19. //priority_queue<int,vector<int>,greater<int>> que;
  20. typedef long long ll;
  21. int er[];
  22. int er2[];
  23. int ans[];
  24. ll l,r;
  25. int pop=;
  26. ll anser1=;
  27. void init(ll t)
  28. {
  29. int pop=;
  30. while(t>)
  31. {
  32. er[pop++]=t%;
  33. t=t/;
  34. }
  35. }
  36. void init2(ll t)
  37. {
  38. int pop=;
  39. while(t>)
  40. {
  41. er2[pop++]=t%;
  42. t=t/;
  43. }
  44. }
  45. ll now[];
  46. int main()
  47. {
  48. //freopen("in.txt", "r", stdin);
  49. //freopen("out.txt", "w", stdout);
  50. mem(ans,-);
  51. int flag=;
  52. int have=;
  53. int n;
  54. cin >> n;
  55. for(int i=;i<=n;i++)
  56. cin>>now[i];
  57. for(int i=;i<n;i++)
  58. {
  59. if(flag==)
  60. break;
  61. mem(er,);
  62. mem(er2,);
  63. ll cur=now[i];
  64. ll next=now[i+];
  65. init(cur);
  66. init2(next);
  67. int flag2=;
  68. for(int j=;j>=;j--)
  69. {
  70. if(er[j]!=er2[j])
  71. {
  72. // cout<< j<<endl;
  73. if(er[j]==&&er2[j]==)
  74. {
  75. if(ans[j]==-)
  76. {
  77. ans[j]=;
  78. have++;
  79. flag2=;
  80. break;
  81. }
  82. else if(ans[j]==)
  83. {
  84. flag2=;
  85. break;
  86. }
  87. }
  88. else if(er[j]==&&er2[j]==)
  89. {
  90. if(ans[j]==-)
  91. {
  92. ans[j]=;
  93. have++;
  94. flag2=;
  95. break;
  96. }
  97. else if(ans[j]==)
  98. {
  99. flag2=;
  100. break;
  101. }
  102. }
  103. }
  104. }
  105. if(flag2==)
  106. flag=;
  107. }
  108. if(flag==)
  109. {
  110. cout<<<<endl;
  111. return ;
  112. }
  113. ll anser=1LL*<<(-have);
  114. cout<<anser<<endl;
  115. return ;
  116. }

I:数位DP

  1. #include <bits/stdc++.h>
  2. #include <cstring>
  3. #include <iostream>
  4. #include <algorithm>
  5. #define foror(i,a,b) for(i=a;i<b;i++)
  6. #define foror2(i,a,b) for(i=a;i>b;i--)
  7. #define EPS 1.0e-8
  8. #define PI acos(-1.0)
  9. #define INF 3000000000
  10. #define MOD 1000000007
  11. #define mem(a,b) memset((a),b,sizeof(a))
  12. #define TS printf("!!!\n")
  13. #define lson o<<1, l, m
  14. #define rson o<<1|1, m+1, r
  15. //using ll = long long;
  16. //using ull= unsigned long long;
  17. //std::ios::sync_with_stdio(false);
  18. using namespace std;
  19. //priority_queue<int,vector<int>,greater<int>> que;
  20. typedef long long ll;
  21. ll ans[][];
  22. void init()
  23. {
  24. ans[][]=,ans[][]=ans[][]=;
  25. for(int i=;i<=;i++)
  26. {
  27. ans[i+][]=(ans[i][]+ans[i][]+ans[i][])*%MOD;
  28. ans[i+][]=ans[i][]%MOD,ans[i+][]=ans[i][]%MOD;
  29. }
  30. }
  31. int main()
  32. {
  33. //freopen("in.txt", "r", stdin);
  34. //freopen("out.txt", "w", stdout);
  35. init();
  36. int t;
  37. cin >> t;
  38. while(t--)
  39. {
  40. int n;
  41. scanf("%d",&n);
  42. ll anser=(ans[n][]+ans[n][]+ans[n][])%MOD;
  43. cout<<anser<<endl;
  44. }
  45. return ;
  46. }

Summer training #5的更多相关文章

  1. hdu 4946 2014 Multi-University Training Contest 8

    Area of Mushroom Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) ...

  2. 2016 Multi-University Training Contests

    2016 Multi-University Training Contest 1 2016 Multi-University Training Contest 2 2016 Multi-Univers ...

  3. 2016 Multi-University Training Contest 2 D. Differencia

    Differencia Time Limit: 10000/10000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Tot ...

  4. 2016 Multi-University Training Contest 1 G. Rigid Frameworks

    Rigid Frameworks Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) ...

  5. ACM: Gym 101047K Training with Phuket's larvae - 思维题

     Gym 101047K Training with Phuket's larvae Time Limit:2000MS     Memory Limit:65536KB     64bit IO F ...

  6. The Solution of UESTC 2016 Summer Training #1 Div.2 Problem C

    Link http://acm.hust.edu.cn/vjudge/contest/121539#problem/C Description standard input/output After ...

  7. 2012 Multi-University Training Contest 9 / hdu4389

    2012 Multi-University Training Contest 9 / hdu4389 打巨表,实为数位dp 还不太懂 先这样放着.. 对于打表,当然我们不能直接打,这里有技巧.我们可以 ...

  8. 2014 Multi-University Training Contest 9#11

    2014 Multi-University Training Contest 9#11 Killing MonstersTime Limit: 2000/1000 MS (Java/Others)   ...

  9. 2014 Multi-University Training Contest 9#6

    2014 Multi-University Training Contest 9#6 Fast Matrix CalculationTime Limit: 2000/1000 MS (Java/Oth ...

  10. 2016 Multi-University Training Contest 1

    8/11 2016 Multi-University Training Contest 1 官方题解 老年选手历险记 最小生成树+线性期望 A Abandoned country(BH) 题意: 1. ...

随机推荐

  1. Java和SQL取两个字符间的值

    Java String str = "abcdefg"; String result = str.substring(str.indexOf(">")+1 ...

  2. ERROR 2002 (HY000): Can 't connect to local MySQL server through socket '/tmp/mysql.sock '(2) "

    找不到mysql.sock这个文件 如果在你操作安装提示创建该文件,重启服务器还是提示这个错误可以试一下 mysql -uroot -h 127.0.0.1 -p 应该是可以直接进入 具体处理方法 重 ...

  3. 逆序对 -- cogs1438 火柴排队

    题目链接:http://cogs.pro:8081/cogs/problem/problem.php?pid=vimiQkqjU [题目描述] 样例一输入: 4 2 3 1 4 3 2 1 4 样例二 ...

  4. USACO 1.3 Name That Number【暴搜】

    裸的穷举搜索. 研究了好久怎么输入$dict.txt$,$USACO$好像对$freopen$的顺序还有要求? /* ID: Starry21 LANG: C++ TASK: namenum */ # ...

  5. SQL -------- JDBC 修改某条记录得内容

    package demo; import java.io.IOException; import java.sql.Connection; import java.sql.DriverManager; ...

  6. 第10课.c++的新成员

    1.动态内存分配 a.c++中通过new关键字进行动态内存申请 b.c++中的动态内存申请是基于类型进行的 c.delete关键字用于内存释放 2.new关键字与malloc函数的区别 a.new关键 ...

  7. 【Python】if __name__ == '__main__' 含义解析

    相信大家在看别人的python程序时,可能会在大部分的程序后看到标题这段代码,这里解释下它的意义.总的来说,这句代码的作用就是既能保证当前的.py文件直接运行,也能保证其可以作为模块被其他.py文件导 ...

  8. GIP画图

    世界坐标:相对于winform窗体来说的, 页面坐标:相对于控件的 设置坐标:相对于显示器 获得Graphics对象一般有两种方式: 1.控件.CreateGraphics();//通过该方式创建后要 ...

  9. Android Application的目录结构

    目录结构: 1,java目录:保存java或kotlin源文件 2,res目录:保存Android项目的各种资源文件.比如layout子目录存放界面布局文件,values子目录存放各种XML格式的资源 ...

  10. strCmd.Format("delete FROM userTable where name = '%s'", name);

    string.Format("select * from 数据库表 where 用户名='%s' and 密码='%s' ",m_1,m_2); 把[m_1]和[m_2]的值按照[ ...