Codeforces #345 Div.1

打CF有助于提高做题的正确率。

Watchmen

题目描述:求欧拉距离等于曼哈顿距离的点对个数。

solution
签到题,其实就是求有多少对点在同一行或同一列。

时间复杂度:\(O(nlogn)\)

Image Preview

题目描述:给定看一张照片的时间,翻页的时间,把图片翻转的时间。一开始屏幕显示第一张照片,可以向左或向右翻,不能跳过还没有看过的图片,方向不对的图片要先翻转再看,看过的不消耗翻转时间与看照片时间,问在一定时间内,最多能看多少张照片。

solution
易得只会转向一次,即开始时向左翻,然后向右翻,或者一开始向右翻,然后向左翻。部分和处理一下就可以了。

时间复杂度:\(O(nlogn)\)

Table Compression

题目描述:给出一个矩阵,求另一个矩阵,使得这个矩阵的同一行和同一列的数的大小关系一致,并使这个矩阵的最大值最小,输出这个矩阵。

solution
如果没有相同的数字,那么将每一行每一列分别排序,然后连边,求每个点的最长路径即可。如果有相同数字,就要用并查集来维护这些在同一行同一列相同的数字,再做最长路径。

时间复杂度:\(O(nlogn)\)

Zip-line

题目描述:给出一个序列,每次修改其中的一个数,求序列最长严格上升子序列,每次修改是单独的,即修改后会还原。

solution
用线段树维护原序列的最长上升子序列(正反)。
答案有两种情况:
1、修改后的数在最优子序列中,这时答案为(正向最大+反向最大)线段树求。
2、修改后的数不在最优子序列中,所以答案应该是原序列的最长上升子序列或次长序列。问题转化为该位置是否在原序列的所有最优解中,是则答案为原序列最优解减一,否则为最优解。
这个问题可以通过先求原序列最优解,然后看最优解序列的某一位是否是唯一的位置,如果是,该位置则是一定出现在所有最优解中,否则反之。

时间复杂度:\(O(nlogn)\)

Clock Bomb

题目描述:给出一棵树,现在要把它变成另一种形态,操作为删掉一条边,再加一条边,此过程中不能出现有环(包括自环),输出操作方案。

solution
这题还没想出怎么做,但删去一条边后就会把树分成两部分,而后来加上去的边一定要在这两部分之间相连。

Codeforces #345 Div.1的更多相关文章

  1. codeforces #345 (Div. 1) D. Zip-line (线段树+最长上升子序列)

    Vasya has decided to build a zip-line on trees of a nearby forest. He wants the line to be as long a ...

  2. cf之路,1,Codeforces Round #345 (Div. 2)

     cf之路,1,Codeforces Round #345 (Div. 2) ps:昨天第一次参加cf比赛,比赛之前为了熟悉下cf比赛题目的难度.所以做了round#345连试试水的深浅.....   ...

  3. Codeforces #344 Div.2

    Codeforces #344 Div.2 Interview 题目描述:求两个序列的子序列或操作的和的最大值 solution 签到题 时间复杂度:\(O(n^2)\) Print Check 题目 ...

  4. Codeforces Beta Round #27 (Codeforces format, Div. 2)

    Codeforces Beta Round #27 (Codeforces format, Div. 2) http://codeforces.com/contest/27 A #include< ...

  5. Codeforces#441 Div.2 四小题

    Codeforces#441 Div.2 四小题 链接 A. Trip For Meal 小熊维尼喜欢吃蜂蜜.他每天要在朋友家享用N次蜂蜜 , 朋友A到B家的距离是 a ,A到C家的距离是b ,B到C ...

  6. codeforces #592(Div.2)

    codeforces #592(Div.2) A Pens and Pencils Tomorrow is a difficult day for Polycarp: he has to attend ...

  7. codeforces #578(Div.2)

    codeforces #578(Div.2) A. Hotelier Amugae has a hotel consisting of 1010 rooms. The rooms are number ...

  8. codeforces #577(Div.2)

    codeforces #577(Div.2) A  Important Exam A class of students wrote a multiple-choice test. There are ...

  9. codeforces #332 div 2 D. Spongebob and Squares

    http://codeforces.com/contest/599/problem/D 题意:给出总的方格数x,问有多少种不同尺寸的矩形满足题意,输出方案数和长宽(3,5和5,3算两种) 思路:比赛的 ...

随机推荐

  1. Vitamio视频播放

    activity代码 package com.hck.player.ui; import io.vov.utils.StringUtils; import io.vov.vitamio.LibsChe ...

  2. IA32与x86

    64位机器相比于32位优点 ①访问虚拟地址范围更大 ②更多的寄存器 ③过程较简单 ④采用条件传送指令 详细看:http://baike.baidu.com/link?url=DoRp7iW_z3cE6 ...

  3. 【转】Linux内核调试方法总结

    目录[-] 一  调试前的准备 二  内核中的bug 三  内核调试配置选项 1  内核配置 2  调试原子操作 四  引发bug并打印信息 1  BUG()和BUG_ON() 2  dump_sta ...

  4. 【转】HDMI控制与组态剖析

    HDMI能够称霸为王者之尊吗?目前消费者陷入的困境就是Audio/Video的连接线数量过度庞大,而HDMI最大卖点之一就是可使用单一的连接线完全取代众多的影音连接线,简洁又方便.缺点是技术版本变动太 ...

  5. poj 2356 Find a multiple(鸽巢原理)

    Description The input contains N natural (i.e. positive integer) numbers ( N <= ). Each of that n ...

  6. 认识SVN

    TortoiseSVN 是 Subversion 版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录.文件保存在中央版本库,除了能记住文件和目录的每次修改以外,版本库非常像普通的文件 服务 ...

  7. LR实战之Discuz开源论坛——安装及简介

    想了很久,也许是因为这段时间特别闲,从毕业到现在,我的测试职业生涯也近两年了,发现自己越来越喜欢测试领域,也越来越偏向测试开发了,作为一名专业的测试人员,不得不要学习性能测试,而使用LoadRunne ...

  8. ubuntu14.04下arm-linux-gcc 4.5.1的安装与配置

    使用的是友善之臂mini6410自带光盘中的. 1.对新版本arm-linux-gcc-5.4.1进行解压(注意,下面的C是大写的) tar zxvf arm-linux-gcc-4.5.1-v6-v ...

  9. SCII码表 键盘常用ASCII码

    ASCII码对照表   在Web开发时,如下的ASCII码只要加上&#和;就可以变成Web可以辨认的字符了在处理特殊字符的时候特别有用,如:' 单引号在数据库查询的时候是杀手,但是如果转换成' ...

  10. RDLC报表系列(一) 简单的动态数据绑定和配置

    RDLC系列链接 RDLC报表系列(一) 简单的动态数据绑定和配置  RDLC报表系列(二) 行分组 RDLC报表系列(三) 总计和折叠 RDLC报表系列(四) 矩阵 RDLC报表系列(五) 简单的图 ...