昨天晚上打的这个比赛,简直一颗赛艇啊……

感觉发挥的并不好。比赛的时候比较紧张,最后一题还脑残写了个离散化结果爆零了,哎我怎么这么逗逼……

讲讲比赛经过吧。

比赛之前逗逼地以为是8:00开始,然后淡定了5min就被告知是7:00……哎我怎么这么逗逼把开始时间都记错了2333……

头比赛的时候在写xor和路径,一看还剩下1min+,马上就扔了开始数倒计时。

7:00准时发题,拿到题之后直接开读。

A题目排列顺序,哎好像不太难的样子,不管了读完题再说。

B题目交流通道,卧槽这什么图论还要计数的玩意儿,不会不会。

C题目难度提升,哎卧槽好像是个数据结构题,算了去写A题好了……

读题的时候对面lrd和dbw在那儿讨论上下界网络流,有点吵……不过很快就停了,lrd回来开始读题。

又读了一遍A题,是要求构造一个LIS的DP数组恰好为给定输入的方案,考虑到LIS问题可以用RMQ优化,可以在线读入然后动态维护,鉴于这是个带插入的RMQ,用平衡树维护就好了。一开始写的是Treap,元素先用double标号最后再一遍离散化出解,写着写着发现不对劲,一些情况我不会分类讨论(太紧张了……),算了不用double标号了,直接动态插入最后查询一遍名次就行了,然后一怒之下把Treap删了再写splay……(毕竟查询名次可以直接splay一下然后返回左子树大小嘛……感觉这点比较方便)写了100+行,然后开始调,调了10min感觉不对劲,既然每次直接插入到最后一个比它小的后面,换句话说f值相同的应该降序排列,f值不同的肯定是要升序了,卧槽我是SB吗我干嘛要用splay动态维护啊直接一发std::sort()不就完了嘛……一怒之下把splay的代码扔到一边去了,然后写了一个24行的std::sort(),哎1h+才把第一题写完,我是傻叉……

交上去之后过了样例,感觉好虚啊就写了一发数据生成器和spj,结果spj写挂了调了半天,调出来了比赛都过了一半多了……我菜爆了= =

中间lrd写完了三道题的暴力(没错,就是无脑暴搜……)说他70分到手了,因缺斯汀……

然后开始打暴力,反正暴力也很无脑,lrd直接告诉我第二题暴搜一下然后Floyd判断就有30分了,然而我写完了又调了半天……最后一题写了个暴搜+平衡树维护中位数,然后我脑残以为离散化不会影响结果,就离散化了一发(居然能过样例……简直坑爹有没有……),感觉10分到手了(此时已经只剩0.5h+了……),然后开始去想T2,想了几分钟觉得自己肯定不会,就去想T3,想到9:35没啥进展,然后一看数据范围感觉互不相同的离散化成排列之后肯定有规律,然后就开始用暴搜搜规律,还真特么搜出来了……

(最后两行是一晚上没关机搜出来的……)

这规律多明显啊,每项显然都是可以直接算的,然后码码码加上n<=13的暴力交上去了。写的时候lrd告诉我离散化有反例,想了想好像真是这样,啊感觉好虚要爆零了(毕竟有捆绑测试……)……

晚上睡觉有点一颗赛艇,想着最后一题能不能骗到分,然而很快就睡着了……

早上看见成绩了,woc最后一题还是爆零了……只拿到了rank56,不过好歹涨了点Rating,算是小小的安慰吧……

lrd拿了rank19,我菜爆了……

贴一下第一题的代码(splay的那个傻逼做法就不贴了……):

 #include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int maxn=;
struct A{
int d,pos;
bool operator<(const A &a)const{
if(d!=a.d)return d<a.d;
return pos>a.pos;
}
}a[maxn];
int n,seq[maxn];
int main(){
scanf("%d",&n);
for(int i=;i<=n;i++){
scanf("%d",&a[i].d);
a[i].pos=i;
}
sort(a+,a+n+);
for(int i=;i<=n;i++)seq[a[i].pos]=i;
for(int i=;i<=n;i++)printf("%d ",seq[i]);
return ;
}

扔一发官方题解赶紧跑……

反思:

这次比赛的时候过于紧张,A题傻逼做法浪费了1h,B题的60分也没有搞出来,C题写了个暴搜还爆零了……

反映出自己还是太弱,水平还需要提高。

下一站,BestCoder Round #91。加油。

(话说下次又是ACM赛制了……Bless all……)

(吐槽一发,这特么简直就是遥遥无期啊……)

UOJ Test Round #2的更多相关文章

  1. UOJ Easy Round#7

    UOJ Easy Round#7 传送门:http://uoj.ac/contest/35 题解:http://matthew99.blog.uoj.ac/blog/2085 #1 题意: 在一个(2 ...

  2. UOJ Test Round 1

    第一题: 题目大意: 给出N个字符串,字符串的前面部分都是字母且都是一样的,后面部分是数字,按照后面的数字排序.N<=10000 解题过程: 1.第一题是真良心,一开始的做法是把后面的数字分离出 ...

  3. 【UOJ Easy Round #1】

    数论/Trie/并查集 猜数 这题我是这样分析的…… $a*b=g*l=n=k^2 \ and \ (g|a,g|b) \Rightarrow (g*a')*(g*b' )=g*l=k^2 \\ \R ...

  4. UOJ Easy Round #5

    Preface 本着刷遍(只刷一遍)各大OJ的原则我找到了一场UOJ的比赛 无奈UOJ一般的比赛难度太大,我就精选了UER中最简单的一场打了一下,就当是CSP前的练习吧 A. [UER #5]万圣节的 ...

  5. 【UOJ Easy Round #2】

    然而UER我也照样跪…… 第一题 忘了取模sad || 操作符将整个区间分成了一些段,每个手机只会执行其中某一段,执行次数为这一段中&&的个数?+1? ans=ans*num[i]+1 ...

  6. UOJ Rounds

    UOJ Test Round #1 T1:数字比大小的本质是按(长度,字典序)比大小. T2:首先发现单调性,二分答案,用堆模拟,$O(n\log^2 n)$. 第二个log已经没有什么可优化的了,但 ...

  7. 51Nod 算法马拉松21(迎新年)

    这次打算法马拉松是在星期五的晚上,发挥还算正常(废话,剩下的题都不会= =). 讲讲比赛经过吧. 8:00准时发题,拿到之后第一时间开始读. A配对,看上去像是二分图最大权匹配,一看范围吓傻了,先跳过 ...

  8. NOI前训练日记

    向别人学习一波,记点流水帐.17.5.29开坑. 5.29 早晨看了道据说是树状数组优化DP的题(hdu5542),然后脑补了一个复杂度500^3的meet in the middle.然后死T... ...

  9. 半小时写完替罪羊重构点分树做动态动态点分治之紫荆花之恋的wyy贴心指导

    刷题训练 初学者 有一定语言基础,但是不了解算法竞赛,水平在联赛一等奖以下的. 参考书:<算法竞赛入门经典--刘汝佳>,<算法竞赛入门经典训练指南--刘汝佳> 题库:洛谷(历年 ...

随机推荐

  1. Struts2系列——struts2的result

    在action的指定方法执行完毕后总会返回一个字符串,struts2根据返回的字符串去action的配置中的result去找匹配的名字,根据配置执行下一步的操作. 在ActionSupport基类中定 ...

  2. bzoj1486: [HNOI2009]最小圈

    二分+dfs. 这道题求图的最小环的每条边的权值的平均值μ. 这个平均值是大有用处的,求它我们就不用记录这条环到底有几条边构成. 如果我们把这个图的所有边的权值减去μ,就会出现负环. 所以二分求解. ...

  3. 省常中模拟 Test4

    prime 数论 题意:分别求 1*n.2*n.3*n.... n*n 关于模 p 的逆元.p 是质数,n < p. 初步解法:暴力枚举.因为 a 关于模 p 的逆元 b 满足 ab mod p ...

  4. LeetCode: divideInteger

    Title: Divide two integers without using multiplication, division and mod operator. If it is overflo ...

  5. oracle查询某个用户下的所有视图

    SYS>select view_name from dba_views where owner = 'NS_RAS3'; VIEW_NAME--------------------------- ...

  6. 【转】iOS-延迟操作方法总结

    原文网址:http://lysongzi.com/2016/01/30/iOS-%E5%BB%B6%E8%BF%9F%E6%93%8D%E4%BD%9C%E6%96%B9%E6%B3%95%E6%80 ...

  7. MyBatis学习 之 一、MyBatis简介与配置MyBatis+Spring+MySql

    目录(?)[-] 一MyBatis简介与配置MyBatisSpringMySql MyBatis简介 MyBatisSpringMySql简单配置 搭建Spring环境 建立MySql数据库 搭建My ...

  8. 【转】匹配dll(exe)和pdb方法

    1. 静态检查windbg 调试工具包中有一个工具symchk.exe, 选项很多, 下面一个简单的用法可以检查一个 test.exe能不能找到与它匹配的PDB: 这是成功的情形. 下面来个失败的作为 ...

  9. POJ 1519 Digital Roots

    题意:求数根. 解法:一个数的数根就是mod9的值,0换成9,只是没想到给的是一个大数……只好先把每位都加起来再mod9…… 代码: #include<stdio.h> #include& ...

  10. python easy_install centos 下安装过程和原理解析

    一.easy_install 安装过程 其安装过程有很多种,我也找了很多的例子,但是结果都不太好,以下方法的结果是不错的. easy_install与yum类似,使用easy_install,可以轻松 ...