第十周练习 1006 月之数

原创 2015年11月19日 21:18:42

Problem Description

当寒月还在读大一的时候,他在一本武林秘籍中(据后来考证,估计是计算机基础,狂汗-ing),发现了神奇的二进制数。
如果一个正整数m表示成二进制,它的位数为n(不包含前导0),寒月称它为一个n二进制数。所有的n二进制数中,1的总个数被称为n对应的月之数。
例如,3二进制数总共有4个,分别是4(100)、5(101)、6(110)、7(111),他们中1的个数一共是1+2+2+3=8,所以3对应的月之数就是8。

Input

给你一个整数T,表示输入数据的组数,接下来有T行,每行包含一个正整数 n(1<=n<=20)。

Output

对于每个n ,在一行内输出n对应的月之数。

Sample Input

3
1
2
3

Sample Output

1
3
8

这算递归嘛?

总之……各种折腾,先是折腾阶乘和组合的写法,然后发现数字溢出了……OTZ

最后算是做出来了,感觉不错,学到新东西了。

#include<stdio.h>
__int64 jc(int i)
{
	__int64 sum=1;
	int j;
	for(j=2;j<=i;j++)
		sum*=j;
	return sum;	
}
__int64 pl(int a,int b)
{
	__int64 sum;
	int c;
	c=b-a;
	sum=jc(b)/(jc(c)*jc(a));
	return sum;
}
int main()
{
	int n,i,a;
	__int64 sum;
	while(scanf("%d",&n)!=EOF)
	{
		while(n--)
		{
			scanf("%d",&a);
			if(a==0)
			{
				sum=0;
			}
			else 
			{
				sum=1;
				int j=0;
				for(i=1;i<a;i++)
				{
					sum+=pl(i,a-1)*i;
					j+=pl(i,a-1);
				}
				sum+=j;
			}
		printf("%I64d\n",sum);	
		}
	}
	return 0;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

Coursera机器学习-第十周-Large Scale Machine Learning

Gradient Descent with Large DatasetsLearning With Large Datasets 我们已经知道,得到一个高效的机器学习系统的最好的方式之一是,用一个低...
  • dingchenxixi
  • dingchenxixi
  • 2016年06月23日 15:47
  • 2955

coursera Machine Learning 第十周 测验quiz答案解析Large Scale Machine Learning

1.选择:D 解析:由于代价函数上升了,所以应该减少学习速率,选择D 2.选择:BC 解析:A并不需要代价函数总是减少,可能会降低故错误。B在运行随机梯度下降算法前最好将样本打乱随机化,正确。C也就...
  • sinat_39805237
  • sinat_39805237
  • 2018年01月12日 17:30
  • 92

Machine Learning第十周笔记:大规模机器学习

刚刚完成了Andrew Ng在Cousera上的Machine Learning的第十周课程,这周主要介绍的是大规模机器学习,现将笔记整理在下面。Gradient Descent with Large...
  • MajorDong100
  • MajorDong100
  • 2016年04月14日 12:32
  • 7049

HDU2502 月之数(解法三)【废除!!!】

月之数 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submis...
  • tigerisland45
  • tigerisland45
  • 2016年07月07日 21:24
  • 1556

程序设计与算法 第十周测验

程序设计与算法 第十周测验
  • xiewen99
  • xiewen99
  • 2016年10月24日 17:31
  • 339

第十周作业1

调试例题 #include using namespace std; int main() { int a=10; int *p; p=&a; cout
  • u013901290
  • u013901290
  • 2014年05月04日 08:38
  • 313

机器学习-学习笔记 学习总结归纳(第十周)

优化分析优化所谓优化,讲的就是如何求解目标函数在约束条件下的最优解。机器学习、人工智能中的绝大部分问题,到最后基本都会归结为求解优化问题,因此学习优化理论是非常有必要的。这里只是一个非常简单的一个基础...
  • linglian0522
  • linglian0522
  • 2017年08月18日 13:46
  • 238

<Python核心编程(第二版)>第六章练习题

1. 字符串. string 模块中是否有一种字符串方法或者函数可以帮我鉴定一下字符串是否是另一个大字符串的一部分?     in    2. 字符串标识符. 修改例6-1 的 idcheck....
  • qq_20113327
  • qq_20113327
  • 2017年03月10日 17:56
  • 431

Coursera-吴恩达-机器学习-(第10周笔记)大数据训练

此系列为 Coursera 网站Andrew Ng机器学习课程个人学习笔记(仅供参考) 课程网址:https://www.coursera.org/learn/machine-learning ...
  • malele4th
  • malele4th
  • 2018年01月16日 19:45
  • 34

第一讲、整数划分(回溯实现)

/**  *   * @author chenzhuzuo  * 回溯法解决数字拆分问题  * 问题描述:  * 整数的分划问题。  如,对于正整数n=6,可以分划为:  6  5+1...
  • u013447515
  • u013447515
  • 2016年01月30日 23:56
  • 309
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:第十周练习 1006 月之数
举报原因:
原因补充:

(最多只允许输入30个字)