数学
文章平均质量分 67
huohaifeng
这个作者很懒,什么都没留下…
展开
-
平分糖果---2013阿里笔试题
/*有n个小朋友坐成一圈,每人有Ai个糖果。每人只能给左右两人传递糖果。每人每次传递一个糖果代价为1,求使所有人获得均等糖果的最小代价。假设当前n个小朋友手中的糖果数量是a[ 1 ] , a[ 2 ] , ...... , a[ n ]那么总共的糖果量是sum_ = a[ 1 ] + a[ 2 ] + ...... + a[ n ]平均值,即传苹果结束的时候每个人手中剩余苹果量是:a原创 2013-09-14 17:56:33 · 370 阅读 · 0 评论 -
在升序数组中找和为n的两个数
//找到任意一对即可#include#includeusing namespace std;int main() { int a[ 100 ]; int i; int j; for( i = 0 ; i < 100 ; i ++ ) { a[ i ] = rand() % 100; } //排序 sort( a , a + 100 ); int n = rand()原创 2013-09-14 18:53:10 · 221 阅读 · 0 评论 -
数组中出现次数超过数组长度一半的数字
#include using namespace std;int deal( int a[] , int length ) { int i; int t_num; int t_time; if( length <= 0 ) { return -1; } if( length == 1 ) { return a[ 0 ]; } t_time = 1; t_num =原创 2013-09-15 17:22:12 · 173 阅读 · 0 评论 -
和为n连续正数序列
#includeusing namespace std;int main() { int n; int i; int length; scanf( "%d" , & n ); cout << n << endl; //序列的长度是length for( length = 2 ; ; length ++ ) { //序列中间那个数是mid int mid = n / le原创 2013-09-14 18:33:33 · 192 阅读 · 0 评论 -
判断5张牌是不是顺子
/*1. 扑克牌的顺子从扑克牌中随机抽 5 张牌,判断是不是一个顺子,即这 5 张牌是不是连续的。2-10 为数字本身, A 为 1 , J 为 11 , Q 为 12 , K 为 13 ,而大小王可以看成任意数字。*///输入中,0代表大小王#include#includeusing namespace std;void init_list( int list[] ) {原创 2013-09-15 17:28:25 · 367 阅读 · 0 评论 -
约瑟夫环
/*假设当前7个人围坐一起,其编号依次是 0、1、2、3、4、5、6,第i个人喊数字i+1。喊到m,即第m-1个人离开,然后重新开始喊。当前有7个人,其编号依次是:0、1、2、3、4、5、6编号为2的人离开,剩下6个人,重新编号。原来编号为3的人,先在编号为0,这时候6个人的编号是:4、5、*、0、1、2、3*表示该位置有人离开从上面7个人和6个人每个人的编号对应关系可以知道,如果原创 2013-09-16 16:13:34 · 212 阅读 · 0 评论 -
丑数
/*题目:我们把只包含因子 2 、 3 和 5 的数称作丑数( Ugly Number ) 。例如 6 、 8 都是丑数,但 14 不是,因为它包含因子 7 。习惯上我们把 1 当做是第一个丑数。求按从小到大的顺序的第 1500 个丑数。*/#includeusing namespace std;int a[ 1505 ];int getMin( int a , int b)原创 2013-09-17 18:29:48 · 196 阅读 · 0 评论 -
求m的n次方
//求m的n次方//假设所有数据都在int范围内#includeusing namespace std;int m_n( int m , int n ){ int k = m; int t = 1; int p = 1; if( n == 0 ){ return 1; } while( p <= n ) { if( ( p & n ) > 0 ) { t = k原创 2013-09-19 20:25:56 · 244 阅读 · 0 评论