11 2011 档案
摘要:2010年11月20日,随着NOIP2010--我的第一次NOIP也是最后一次NOIP的结束,我的OI生涯也结束了。上午还在福大考场中拼命做题,下午在为不知命运指向何方而紧张,回到家,打开电脑,删了满桌面的OI资料,删了无比熟悉的FreePascal,把已经到零的NOIP倒计时换成了高考倒计时……是
阅读全文
摘要:有N个石子,每个石子重量Qi;按顺序将它们装进K个筐中;求一种方案,使得最重的筐最轻。样例:N=9,K=39 7 5 6 8 4 3 2 716 19 16最轻的最重筐为19思路:二分搜索(PS:这就是传说中的“二分答案”?)IOI中国国家集训队2005论文《参数搜索的应用》中有详细分析,这里我就不多说了,下面是我的代码。 1 //2011.11.06 2 //By LYLtim 3 4 #include 5 #include 6 7 size_t N, K; 8 unsigned *Q, sum; 9 10 void Init(void)11 {12 size_t i;13 ...
阅读全文
摘要:1、统计一个无符号整数的二进制表示中1的个数,函数原型是int countbit(unsigned int x);。/*Count the number of 1-bits in a positive number.**By LYLtim*/int CountBit(unsigned x){ x = (x & 0x55555555) + ((x >> 1) & 0x55555555); x = (x & 0x33333333) + ((x >> 2) & 0x33333333); x = (x & 0x0F0F0F0F) + ((
阅读全文
摘要:1、本节的折半查找算法有一个特点:如果待查找的元素在数组中有多个则返回其中任意一个,以本节定义的数组int a[8] = { 1, 2, 2, 2, 5, 6, 8, 9 };为例,如果调用binarysearch(2)则返回3,即a[3],而有些场合下要求这样的查找返回a[1],也就是说,如果待查找的元素在数组中有多个则返回第一个。请修改折半查找算法实现这一特性。//By LYLtim#include<stdio.h>#define LEN 8int a[LEN] = { 1, 2, 2, 2, 5, 6, 8, 9 };int Search(int k){ int start
阅读全文

浙公网安备 33010602011771号