题意:有30000个木块,编号从1到30000,然后有两种操作M a b,把木块a所在的堆块放到木块b所在的堆块上,操作C a,询问木块a下面有多少个木块。
题解:用一个数组s[i]存木块i所在堆块一共有多少个木块,因为要求木块i下面有多少个木块,所以再添加一个数组dis[i]存木块i到根节点有多少个木块,这样res = s[i]-dis[i]-1。dis数组更新放在寻找根结点递归的后面,因为要先...
分类:
其他好文 时间:
2015-05-02 01:08:58
阅读次数:
106
一.程序结构 1.C 程序结构:任何一个C程序都是由一个或小个程序代码块组成,每个小程序都有自己的功能,一般称这些小程序为函数。所以,也可以说C程序是由函数组成的。二.函数的概念: 1.函数名:一个程序由无数个函数组成,每一个函数都有自己的命名,也就是名字。 2.调用函数:根据函数名对函数进行...
分类:
其他好文 时间:
2015-05-02 01:00:57
阅读次数:
170
// uva 10003 Cutting Sticks 区间dp
// 经典的区间dp
// dp(i,j)表示切割小木棍i-j所需要的最小花费
// 则状态转移为dp(i,j) = min{dp(i,k) + dp(k,j) + a[j]-a[i])
// 其中k>i && k<j
// a[j] - a[i] 为第一刀切割的代价
// a[0] = 0,a[n+1] = L;
// dp数组初...
分类:
其他好文 时间:
2015-05-01 23:55:26
阅读次数:
378
今天没事了,在查看nginx源代码中看到ngx_list的结构,发现设计为链表数组的形式,不知道为什么这样设计struct ngx_list_part_s { void *elts;//指向数组的起始地址 ngx_uint_t nelts;//数组已...
分类:
其他好文 时间:
2015-05-01 23:43:18
阅读次数:
202
前两天.net老师讲数组,发现了个方法,Array.Clear()。里面有三个参数 Array array,int index,int length,他们分别是 array类型的相关类,清除的起始索引,清除长度。看似好像没什么可想象的。但后来发现这个函数居然有重载,那么问题来了,既然没有重载,那么多...
分类:
编程语言 时间:
2015-05-01 23:40:13
阅读次数:
185
1、首先写一个要绑定的对象
User.java
package com.zjd.getExcel.entity;
/**
* Created by dong on 15-4-19.
*/
public class User {
public User(){}
private Integer id;
private String username;
p...
分类:
编程语言 时间:
2015-05-01 22:37:40
阅读次数:
198
数组:int[] numbers = {4, 5, 6, 1, 2, 3, -2, -1, 0};foreach (int i in numbers){ System.Console.WriteLine(i);}
=$i;$j--){//相邻两个数比较if($arr[$j]=0)&&($iTemp1){$left=QuickSort($left);}//排序后的数组$new_arr=$left;//将当前数组第一个放到最后$new_arr[]=$arr[0];//如果又索引有值则对右索引排序if($r>1){...
分类:
编程语言 时间:
2015-05-01 22:34:04
阅读次数:
169
一、数组操作的基本函数1、数组的键名和值array_values($arr);获得数组的值array_keys($arr);获得数组的键名array_flip($arr); 数组中的值与键名互换(如果有重复前面的会被后面的覆盖)in_array("apple",$arr); 在数组中检索applea...
分类:
Web程序 时间:
2015-05-01 21:15:16
阅读次数:
129
一开始只会用归并排序算,但不知怎么的蜜汁WA,所以还是学习一下树状数组的方法。。。树状数组的方法看起来比归并排序简单很多。
分类:
编程语言 时间:
2015-05-01 21:14:33
阅读次数:
146