这题前三段都是一堆吹爆赞助商的屁话,正式题目在图片下边,一个简单模拟题。

题目大意:

有n个男生,m个女生在进行舞会,其中一部分男生祥和比自己矮的女生跳舞,一部分男生想和比自己高的女生跳舞,一部分女生想和比自己高的男生跳舞,一部分女生想和比自己矮的男生跳舞;

所以,我们可以这样配对:想跟比自己矮的女生跳舞的男生——想跟比自己高的男生跳舞的女生;想跟比自己高的女生跳舞的男生——想跟比自己矮的男生跳舞的女生。

分组,排序,扫描配对,完事。(不过比赛中某人把代码里的n,m搞错了,从开头debug到封榜才找到bug)

代码如下:

  1. #include<iostream>
  2. #include<algorithm>
  3. #include<memory.h>
  4. #include<stdio.h>
  5. #define max 1000005
  6. using namespace std;
  7. long long int man[max],woman[max],a1[max],a2[max],b1[max],b2[max];
  8. int main(){
  9. int t;
  10. scanf("%d",&t);
  11. while(t--){
  12. int n,m,x=,y=,j=,k=,ans=;
  13. bool vis;
  14. memset(man,,sizeof(man));
  15. memset(woman,,sizeof(woman));
  16. memset(a1,,sizeof(a1));
  17. memset(a2,,sizeof(a2));
  18. memset(b1,,sizeof(b1));
  19. memset(b2,,sizeof(b2));
  20. scanf("%d %d",&n,&m);
  21. for(int i=;i<n;i++){
  22. scanf("%lld",&man[i]);
  23. }
  24. for(int i=;i<m;i++){
  25. scanf("%lld",&woman[i]);
  26. }
  27. for(int i=;i<n;i++){
  28. cin>>vis;
  29. if(vis){
  30. a1[j]=man[i];
  31. j++;
  32. }
  33. else{
  34. a2[k]=man[i];
  35. k++;
  36. }
  37. }
  38. for(int i=;i<m;i++){
  39. cin>>vis;
  40. if(vis){
  41. b1[x]=woman[i];
  42. x++;
  43. }
  44. else{
  45. b2[y]=woman[i];
  46. y++;
  47. }
  48. }
  49. sort(a1,a1+j);
  50. sort(a2,a2+k);
  51. sort(b1,b1+x);
  52. sort(b2,b2+y);
  53. for(int i=,z=;i<j;i++){
  54. while(a1[i]>b2[z]&&z<y){
  55. z++;
  56. }
  57. if(z>=y){
  58. break;
  59. }
  60. ans++;
  61. z++;
  62. }
  63. for(int i=,z=;i<x;i++){
  64. while(b1[i]>a2[z]&&z<k){
  65. z++;
  66. }
  67. if(z>=k){
  68. break;
  69. }
  70. ans++;
  71. z++;
  72. }
  73. printf("%d\n",ans);
  74. }
  75. }

2019浙大校赛--A--Thanks, TuSimple!(简单模拟题)的更多相关文章

  1. 2019浙大校赛--G--Postman(简单思维题)

    一个思维水题 题目大意为,一个邮递员要投递N封信,一次从邮局来回只能投递K封.求最短的投递总距离.需注意,最后一次投递后无需返回邮局. 本题思路要点: 1.最后一次投递无需返回邮局,故最后一次投递所行 ...

  2. 2019浙大校赛--E--Potion(签到水题)

    一丢丢思维就ok 题目大意: 魔法师要煮药,有n个等级的药,所需要的药物为a1,a2...an,意为第n级需要多少药物,下一行为库存的不同等级药物,药物可降级使用不可升级. 思路:从高级药物开始解,把 ...

  3. 2019浙大校赛--J--Extended Twin Composite Number(毒瘤水题)

    毒瘤出题人,坑了我们好久,从基本的素数筛选,到埃氏筛法,到随机数快速素数判定,到费马小定理,好好的水题做成了数论题. 结果答案是 2*n=n+3*n,特判1,2. 以下为毒瘤题目: 题目大意: 输入一 ...

  4. UVa 679 小球下落 简单模拟题,树

    题目大意:给你一个完全二叉树,并且给他们编号,编号规则为左子树为2*k,右子树为2*k+1,每一个节点 上都有一个开关,初始时开关都处于关闭状态,小球碰到节点就会改变该点的开关的状态.然后给你I个小球 ...

  5. POJ 1008 简单模拟题

    e.... 虽然这是一道灰常简单的模拟题.但是米做的时候没有读懂第二个日历的计时方法.然后捏.敲完之后华丽的WA了进一个点.坑点就在一年的最后一天你是该输出本年的.e ...但是我好想并没有..看di ...

  6. HDU 4772 Zhuge Liang&#39;s Password (简单模拟题)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4772 题面: Zhuge Liang's Password Time Limit: 2000/1000 ...

  7. 2017 浙大校赛 [Cloned]

    https://vjudge.net/contest/285902#overview A.Marjar Cola #include <bits/stdc++.h> using namesp ...

  8. ZOJ 3949 (17th 浙大校赛 B题,树型DP)

    题目链接  The 17th Zhejiang University Programming Contest Problem B 题意  给定一棵树,现在要加一条连接$1$(根结点)和$x$的边,求加 ...

  9. 2019湘潭校赛 G(并查集)

    要点 题目传送 题目本质是每个点必属于两个集合中的一个,伴随的性质是:如果一个人说别人true,则他们一定属于同一阵营:如果说别人fake,一定不属于同一阵营. 每个点拆为\(i\)和\(i + n\ ...

随机推荐

  1. 20175213吕正宏 MyCP(课下任务,必做)

    一.任务详情: 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bin 用来把文本文件( ...

  2. python入门(九):目录操作

    getcwd()当前目录路径 >>> import os>>> os.getcwd()'E:\\' chdir()切换目录>>> os.chdir ...

  3. Maven模块化开发

    Maven模块化开发 多人协同开发时,特别是规模较大的项目,为方便日后代码维护管理会将每个人的工作细分到具体的功能和模块上.随着项目的不断扩大,模块会越来越多,后续更加难以维护和扩展,为应对这种情况后 ...

  4. supervisorctl安装使用文档

    1.apt-get install supervisor下载或者pip install supervisor(因为supervisor是python写的)supervisor和python项目没有关系 ...

  5. 小强学渲染之Unity Shader边缘描边加强

    项目开发遇到一个需求,就是当坦克的准心瞄准敌方(enemy tank 或 item box)时,要让选中的对象的轮廓高亮起来,这实际上是接下来要讲解的实时渲染中轮廓线的渲染应用.实现方式有多种,下面逐 ...

  6. echarts水球

    教程网址:https://echarts.baidu.com/blog/2017/02/21/echarts-liquidfill-chart-tutorial.html DEMO网址(引入js在di ...

  7. XML Linq 学习笔记

    XML如下: <?xml version="1.0" encoding="utf-8"?> <Dishes> <Dish> ...

  8. java中比较特殊的三个浮点数Infinity、-Infinity、NaN

    学过javaScript的应该都知道,在js中的数值型number类型中有几个特殊的数,一个正无穷大.一个负无穷大.一个不是一个数NaN. 后来无意中发现java中也有这三个数,不过这三个数是浮点数, ...

  9. String、StringBuilder、StringBuffer 区别

    public static void testStringBuffer(){ long start System currentTimeMillis(); StringBuffer sbuf = ne ...

  10. mumu模拟机安装证书

    1. 先设置锁屏密码 2. 证书.crt才可以直接安装..der和.cer的都不可以.