这题比赛的时候不会做,原来是区间暴力。
其实理解起来也觉得挺简单的,可能是看题的时候被交换这个思想束缚了自己的解题吧,所以一直想不出什么好的做法,看了别人的解题茅舍顿开……
解法:就是在这个数列中先选出一段我们要求的区间,如果在中间取的这段的话,那旁边两段就是剩余的段,也就是我们需要至少k次交换剩余段中最大的值与刚开始选出的段交换最小的值,然后求这选出的这段的和,如此下去更新最大值就得到结果了...
分类:
其他好文 时间:
2014-07-22 23:03:35
阅读次数:
339
题目:du熊学斐波那契ITime Limit : 2000/1000ms (C/Other)
Memory Limit : 65535/32768K (C/Other)本次组委会推荐使用C、C++Problem
Descriptiondu熊对数学一直都非常感兴趣。最近在学习斐波那契数列的它,向你展示...
分类:
其他好文 时间:
2014-07-22 23:00:33
阅读次数:
226
一个轮流取数的游戏,取得的值最大者胜,这里要求结果。
这里使用一下deque数据结构吧。当然这里使用一般数列,用two points的思想解决也是可以的。
deque是可以两头取数都很快的容器。很适合本题这样的情况...
分类:
其他好文 时间:
2014-07-22 23:00:16
阅读次数:
286
一. 什么是二分查找
二分查找又称为折半查找,该算法的思想是将数列按序排列,采用跳跃式方法进行查找,即先以有序数列的中点位置为比较对象,如果要找的元素值小于该中点元素,则将待查序列缩小为左半部分,否则为右半部分。以此类推不断缩小搜索范围。
二. 二分查找的条件
二分查找的先决条件是查找的数列必须是有序的。
三. 二分查找的优缺点
优点:比较次数少,查找速度快,平均性能好;...
分类:
编程语言 时间:
2014-07-22 23:00:14
阅读次数:
512
本题因为数据量小,可以使用暴力法,时间效率是O(n^3)
但是这里巧用最大子段和的思想,可以把时间效率降到O(n)
思想:
1 想使用一个新的数列,计算连续出现了多少个1和连续出现了多少个零
2 求这个新数列的最大子段和
3 Flip最大子段中的 0 和 1,
4 计算出结果
比暴力法复杂很多了,但是时间效率却提高了三个档次。...
分类:
其他好文 时间:
2014-05-02 10:39:46
阅读次数:
584
标准库函数1算数运算stdlib.h2随机数stdlib.h3字符串转化stdlib.h4数学函数
math.h5日期和时间 time.h6信号 signal.h7打印可变参数列表stdarg.h8断言
assert.h抽象数据类型在数据结构中比较仔细运行时环境没看来自为知笔记(Wiz)
分类:
其他好文 时间:
2014-05-01 19:06:09
阅读次数:
305
Fibonacci Tilings 斐波那契数列一个性质的巧妙证明
分类:
其他好文 时间:
2014-05-01 10:56:53
阅读次数:
653
一、方法那些事儿 (1)方法的结构:方法头—指定方法的特征,方法体—可执行代码的语句序列;
(2)方法的调用:参数、值参数、引用参数、输出参数、参数数组; ①参数: 形参—本地变量,声明在参数列表中;形参的值在代码开始之前被初始化;
实参—实参的值用于初始化形参; ②值参数: ...
分类:
其他好文 时间:
2014-05-01 08:49:57
阅读次数:
352
题目很奇怪,就是5个人排队喝可乐,喝完之后编程两个人,然后拍在队后面,然后继续喝可乐。
给出个数值,代表第几罐可乐,问会是第几个人喝到?
http://codeforces.com/problemset/problem/82/A
一个数学问题,仔细点就好了。
要熟练的知识点:
1 要熟悉解决这种递增数列,如何减去循环部分
2 要知道如何计算,求余取答案...
分类:
其他好文 时间:
2014-04-30 22:46:39
阅读次数:
228
-3+1
题目详情:
有一个数列,所有的数都是非负整数,你可以进行如下方式进行一次操作(注意一次完整的操作必须先后完成如下两个步骤):
(1) 任选一个不小于3的数,把它减少3。
(2) 任选一个数把它增加1。
请问,最多能够操作多少次?
输入格式:
多组数据,每组数据第一行是一个正整数n,表示数列中数的个数。(1
第二行包含n个空格分隔的非负整数,每个...
分类:
其他好文 时间:
2014-04-29 13:21:19
阅读次数:
329