随机选择

http://blog.csdn.net/pipisorry/article/details/44491727 Question:随机播放音乐(随机数相关,带权重) 假设张三的mp3里有1000首歌,现在希望设计一种随机算法来随机播放。与普通随机模式不同的是,张三希望每首歌被随机到的改了吧是与一首歌的豆瓣评分(0~10分)成正比的,如item0评分为8.9分,item1评分为9.5分,则希望听item0的概率与item1的概率比为89:95,。现在我们已知这1000首歌的豆瓣评分。 解决方案:...
阅读(1080) 评论(0)

面试逻辑题

一位魔术师邀请三位嘉宾A、B、C上台抽取16张扑克牌,分别是 黑桃:J,8,4,2,7,3 红桃:A,Q,4 方片:A,5 梅花:K,Q,5,4,6 然后,这位魔法师从中抽取一张牌,接着把这张牌的点数告诉嘉宾B,把牌的花色告诉嘉宾C,然后嘉宾A要从B与C的对话中判断出这张牌。B与C的对话如下: B:我不知...
阅读(1035) 评论(0)

取石子游戏NIM

http://blog.csdn.net/pipisorry/article/details/39249337 博弈问题简介 所讨论的博弈问题满足以下条件: 玩家只有两个人,轮流做出决策游戏的状态集有限,保证游戏在有限步后结束,这样必然会产生不能操作者,其输对任何一种局面,胜负只决定于局面本身,而与轮到哪位选手无关 一般称满足以上条件的游戏称为ICG,比如我...
阅读(4718) 评论(3)

编程之美读书笔记2.14 - 子数组之和的最大值

问题: 1. 一个由N个整数元素的一维数组,求其所有子数组中元素和的最大值。 2. 如果数组首尾相邻,也就是允许子数组A[i],...,A[n-1],A[0],...,A[j]存在,求其所有子数组总元素和的最大值。 解法1: /* O(n^2) 遍历算法 */ static int maxSubarraySum1(int *a,int a_len){ int max_su...
阅读(1189) 评论(0)

编程之美读书笔记2.15 - 子数组之和的最大值(二维)

问题: 求二维数组(矩阵)的子矩阵之和的最大值。 解法: //***************************************************************************************/ //*编程之美2.15 —— 求二维数组矩阵的元素之和最大子矩阵\poj 1050 皮皮 2014-9-4 */ //****************...
阅读(1086) 评论(0)

Maximum Submatrix & Largest Rectangle

这篇文章将探讨几个和求最大长方形相关的题目,并试图说明如何把一些相对复杂的问题化归成简单的易解的问题。这里的最大,可以指长方形内所有元素之各最大,也可以指面积最大。 问题一(最大和子矩阵) : 有一个 m x n 的矩阵,矩阵的元素可正可负。请找出该矩阵的一个子矩阵(方块),使得其所有元素之和在所有子矩阵中最大。(问题来源:http://acm.pku.edu.cn/JudgeOnline/...
阅读(960) 评论(0)

编程之美读书笔记1.8 - 小飞的电梯调度算法

问题: 亚洲微软研究院所在的希格玛大厦一共有6部电梯。在高峰时间,每层都有人上下,电梯每层都停。实习生小飞常常会被每层都停的电梯弄的很不耐烦,于是他提出了这样一个办法: 由于楼层并不算太高,那么在繁忙的上下班时间,每次电梯从一层往上走时,我们只允许电梯停在其中的某一层。所有乘客从一楼上电梯,到达某层后,电梯停下来,所有乘客再从这里爬楼梯到自己的目的层。在一楼的时候,每个乘客选择自己的目的层,电...
阅读(1007) 评论(0)

编程之美读书笔记1.3 —— 一摞烙饼的排序

问题:     星期五的晚上,一帮同事在希格玛大厦附近的“硬盘酒吧”多喝了几杯。程序员多喝了几杯之后谈什么呢?自然是算法问题。有个同事说:“我以前在餐馆打工,顾客经常点非常多的烙饼。店里的饼大小不一,我习惯在到达顾客饭桌前,把一摞饼按照大小次序摆好——小的在上面,大的在下面。由于我一只手托着盘子,只好用另一只手,一次抓住最上面的几块饼,把它们上下颠倒个个儿,反复几次之后,这摞烙饼就排好序了。我后...
阅读(719) 评论(0)

编程之美读书笔记1.2——中国象棋将帅问题

问题:题目:下过中国象棋的朋友都知道,双方的“将”和“帅”相隔遥远,并且它们不能照面。在象棋残局中,许多高手能利用这一规则走出精妙的杀招。假设棋盘上只有“将”和“帅”二子(如图1-3所示)(为了下面叙述方便,我们约定用A表示“将”,B表示“帅”): A、B二子被限制在己方3×3的格子里运动。例如,在如上的表格里,A被正方形{d10, f10, d8, f8}包围,而B被正方形...
阅读(1066) 评论(0)

编程之美读书笔记1.1——让CPU占用率曲线听你的指挥

问题:如果机器是多CPU,上面的程序会出现什么结果?如何在多个CPU时显示同样的状态?例如,在双核的机器上,如果让一个单线程的程序死循环,能让两个CPU的使用率达到50%的水平么?为什么? 多CPU的问题首先需要获得系统的CPU信息。可以使用GetProcessorInfo()获得多处理器的信息,然后指定进程在哪一个处理器上运行。其中指定运行使用的是SetThreadAffinityMask...
阅读(1240) 评论(0)
    个人资料
    • 访问:2208489次
    • 积分:23262
    • 等级:
    • 排名:第285名
    • 原创:530篇
    • 转载:30篇
    • 译文:5篇
    • 评论:233条
    Welcome to 皮皮blog~

    博客专栏
    最新评论