zoukankan      html  css  js  c++  java
  • 【AIM Tech Round 5 (rated, Div. 1 + Div. 2) 总结】【题解往前或往后翻,不在这】

    又是爆炸的一场

    心态有点小崩。但问题不大。。

    看A题,一直担心有多个正方形。。小心翼翼地看完之后,毅然地交上去了。

    [00:08] A【Accpted】

    然后开始看B题。

    觉得和之前做的某题很像,但翻了翻发现那题是i-s(i)所以才有单调性.

    然后继续想啊想。突然想到a+b==10000的话岂不是美滋滋。

    然后看了下位数的限制,很开心的交了两行代码上去.

    [00:20] B 【Accpted】

    然后开心地去看C。

    发现这不就是一道离散化+set的题吗?

    对x离散化。然后对于x1..x2这一段。把v[x1].push_back({y1,y2})然后vv[x2].push_back({y1,y2});

    然后for (int i =1 ;i <= 2*n;i++) 对于v[i].size()>0的,tot+=v[i].size();然后把v[i]对应的y1放在大根堆,y2放在小根堆

    如果大根堆堆顶<=小根堆堆顶 且tot>=n-1

    那不就ok了?输出i对应的x以及大根堆到小根堆中任意一个值作为y..

    想法很美好。。。

    [00:40] C 【Pretest Pasted】

    赛后C题WA了。。

    为什么这个思路错了呢?主要在于tot==n的情况。这种情况,如果大根堆堆顶>小根堆堆顶。我们不能简单地认为

    没解,因为我们可以将其中任意一个矩形删掉的!还剩n-1个也满足题意!我显然漏算了这种情况。。

  • 相关阅读:
    iOS
    关于HTTP协议学习(三)
    关于HTTP协议学习(二)
    关于HTTP协议学习(一)
    Swift之Swift编码规范
    老罗学习MVC之旅:MVC组件分析
    android 左右翻页
    android 检测网络是否可用
    android 在线升级借助开源中国App源码
    android 渐变展示启动屏
  • 原文地址:https://www.cnblogs.com/AWCXV/p/9545943.html
Copyright © 2011-2022 走看看