博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2010年9月23日

摘要: // 2_16.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #define INT_MIN -1000000; int binary_search(int *a,int len,int n)//若返回值为x,则a[x]>=n>a[x-1] { int left=0,right=len-1,mid=(left+right)/2; while(... 阅读全文

posted @ 2010-09-23 23:30 KurtWang 阅读(581) 评论(0) 推荐(0) 编辑

摘要: #include "stdafx.h" void reverse(int * arr, int left, int right) { for(;left<right;left++,right--) { int temp = arr[left]; arr[left] = arr[right]; arr[right] = temp; } } void shift(int * arr... 阅读全文

posted @ 2010-09-23 21:51 KurtWang 阅读(302) 评论(0) 推荐(0) 编辑

摘要: #include "stdafx.h" //返回下标 int maxSum(int * arr, int len, int & left, int & right) { int start = arr[0]; int sum = arr[0]; left=0; right=0; int cur_left=0,cur_right=0; for(int i=1;i sum) { ... 阅读全文

posted @ 2010-09-23 21:22 KurtWang 阅读(1009) 评论(4) 推荐(0) 编辑

摘要: #include "stdafx.h" //书解法一 int max(int * arr, size_t len) { int * s = new int[len+1]; int * t = new int[len+1]; int * p = new int[len]; s[0] = 1; t[len] = 1; for(int i=1;i max) max = p[i]; ... 阅读全文

posted @ 2010-09-23 20:53 KurtWang 阅读(333) 评论(0) 推荐(0) 编辑

摘要: #include "stdafx.h" #include void check_sum(int * arr, size_t len, int sum) { assert(arr); int i=0,j=len-1; while(i sum) j--; else i++; } } int _tmain(int argc, _TCHAR* argv[]) { int... 阅读全文

posted @ 2010-09-23 20:25 KurtWang 阅读(320) 评论(0) 推荐(0) 编辑

摘要: #include "stdafx.h" //N阶乘末尾有多少个0 int question1(int n) { int ret = 0; while(n) { n /= 5; ret += n; } return ret; } //N阶乘的二进制表示中最低位1的位置 int question2(int n) { int ret =0; while(n) { n >... 阅读全文

posted @ 2010-09-23 19:33 KurtWang 阅读(193) 评论(0) 推荐(0) 编辑

摘要: // 2_9.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include #define INT_MIN -100000 //最大值和最小值 void min_max(int * arr, size_t len, int & min, int &max) { asse... 阅读全文

posted @ 2010-09-23 19:31 KurtWang 阅读(1671) 评论(0) 推荐(0) 编辑

摘要: #include "stdafx.h" //辗转相除法的改良版,因为取摸开销大,所以改用减法,然后利用是否都是偶数的性质,做优化 int gcd(int a, int b) { if(a>1,b>>1)*2; else return gcd(a>>1,b); } else { if(b&1==0) return gcd(a,b>>1); else ... 阅读全文

posted @ 2010-09-23 17:02 KurtWang 阅读(470) 评论(0) 推荐(0) 编辑

摘要: // 2_4.cpp : Defines the entry point for the console application. // #include "stdafx.h" long sum1s(long n) { long count =0; long factor = 1; long lower = 0; long cur = 0; long higher = 0; ... 阅读全文

posted @ 2010-09-23 15:59 KurtWang 阅读(489) 评论(0) 推荐(0) 编辑

摘要: #include "stdafx.h" int find(int * ID, int N) { int cand; int nTimes=0; for(int i=0;i<N;i++) { if(nTimes == 0) { cand = i; nTimes = 1; } else { if(cand == ID[i]) nTimes++; ... 阅读全文

posted @ 2010-09-23 14:52 KurtWang 阅读(577) 评论(1) 推荐(1) 编辑

摘要: #include "stdafx.h" int count(int t) { int ret = 0; while(t) { t &= t-1; ret++; } return ret; } int _tmain(int argc, _TCHAR* argv[]) { printf("%d\n",count(1)); printf("%d\n",count(2)); p... 阅读全文

posted @ 2010-09-23 14:45 KurtWang 阅读(240) 评论(0) 推荐(0) 编辑