编程之美
面包里的代码
这个作者很懒,什么都没留下…
展开
-
求二进制中1 的个数 及扩展问题
#include/* 求num 二进制中1 的个数,复杂度为o(count) , num&(num-1) 每次消除右起第一个1 考虑 num=1110 num-1=1101 num&(num-1)=1100*/ int numCount(int num){ int count = 0; while(num) { num&=原创 2013-05-30 09:13:27 · 836 阅读 · 0 评论 -
寻找发帖“水王”的扩展问题
#include#include/* 在一个论坛,发现有三个发帖很多的Id ,他们发帖的总数都超过了总数的1/4 ,编程快速的找到这三个id 算法: 每次删除是个不同的Id ,那么最后剩下的 三个Id 就是所求的id */void findThreeK(int* p,int length){ int candidate[3],nTimes[3]={0,0,0},i;原创 2013-05-30 17:42:41 · 826 阅读 · 1 评论 -
微软2014实习生及秋令营技术类职位在线测试: K-th string
import java.util.Scanner;public class KString_2 { private static int number = 33 ; private static int[] comb = new int[(number+1)*(number+2)/2]; // 预处理好的排列组合值 public static void main(String[] a原创 2014-04-13 10:32:38 · 1646 阅读 · 5 评论 -
微软2014实习生及秋令营技术类职位在线测试:String reorder
import java.util.Scanner;public class Stringreorder { /** * @param args */ public static void main(String[] args) { int len = 36 ; int num[] = new int[len] ; char charset[]={'0','1','2原创 2014-04-13 10:34:10 · 1015 阅读 · 0 评论 -
微软2014实习生及秋令营技术类职位在线测试: Reduce inversion count
import java.util.Scanner;public class ReduceInversionCount { public static void main(String[] args) { Scanner in = new Scanner(System.in); String inStr ; Integer[] num ; while(in.hasNext原创 2014-04-13 11:01:05 · 1630 阅读 · 2 评论