hpu 1194 Sequence
HS(Handsome)的Ocean在纸上写下NN个整数,Ocean把它定义为O
O序列。
Ocean认为一个序列的价值的是:序列中不同元素个数。
现在他想知道OO序列中所有子序列的价值之和。
比如说:序列(1,1,2,2)(1,1,2,2)价值为2
2,因为序列中有1
1和2
2两个不同元素。
比如序列(1,1,1)(1,1,1),共有7
7个子序列,(1)、(1)、(1)、(1,1)、(1,1)、(1,1)、(1,1,1)。
(1)、(1)、(1)、(1,1)、(1,1)、(1,1)、(1,1,1)。价值之和为7
7。
输入
每组数据占两行,第一行输入一个整数N
接下来一行输入N
注:1<=T<=10000,1<=N<=50,1<=a
输出
样例输入
4
3
1 1 1
4
1 1 1 1
4
10 10 10 8
20
1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10
样例输出
7
15
22
7864320
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
#include<string.h>
#include<algorithm>
#define ll long long
using namespace std; const int maxn=50+10; ll c[20]; int a[maxn],b[20]; int main()
{
int T,n;
scanf("%d",&T);
while(T--)
{
ll ans=0,t=0,s=0;
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));
scanf("%d",&n);
for(int i=0; i<n; i++)
{
scanf("%d",&a[i]);
b[a[i]]++;//b数组表示某个数出现的次数
}
for(int i=1; i<=10; i++)
{
if(b[i]!=0)s++;//s表示一共有几个不同的数
}
for(int i=1; i<=10; i++)
{
if(b[i])
{
ll t=pow(2,b[i])-1;
for(int j=s; j>=1; j--)
{
if(j==1) c[j]+=t;
else
{
c[j]+=c[j-1]*t;
}
}
}
}
for(int i=1; i<=s; i++)
{
ans+=i*c[i];
}
printf("%lld\n",ans);
}
return 0;
}
hpu 1194 Sequence的更多相关文章
- J - Judge(快速幂)(同余定理)
J - Judge Time Limit:1000MS Memory Limit:131072KB 64bit IO Format:%lld & %llu Submit S ...
- HDU 2062:Subset sequence(思维)
Subset sequence Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tot ...
- 课程五(Sequence Models),第一 周(Recurrent Neural Networks) —— 3.Programming assignments:Jazz improvisation with LSTM
Improvise a Jazz Solo with an LSTM Network Welcome to your final programming assignment of this week ...
- Codeforces1132A——Regular Bracket Sequence(水题)
Regular Bracket Sequence time limit per test:1 second memory limit per test:256 megabytes input:stan ...
- oracle SEQUENCE 创建, 修改,删除
oracle创建序列化: CREATE SEQUENCE seq_itv_collection INCREMENT BY 1 -- 每次加几个 STA ...
- Oracle数据库自动备份SQL文本:Procedure存储过程,View视图,Function函数,Trigger触发器,Sequence序列号等
功能:备份存储过程,视图,函数触发器,Sequence序列号等准备工作:--1.创建文件夹 :'E:/OracleBackUp/ProcBack';--文本存放的路径--2.执行:create or ...
- DG gap sequence修复一例
环境:Oracle 11.2.0.4 DG 故障现象: 客户在备库告警日志中发现GAP sequence提示信息: Mon Nov 21 09:53:29 2016 Media Recovery Wa ...
- Permutation Sequence
The set [1,2,3,-,n] contains a total of n! unique permutations. By listing and labeling all of the p ...
- [LeetCode] Sequence Reconstruction 序列重建
Check whether the original sequence org can be uniquely reconstructed from the sequences in seqs. Th ...
随机推荐
- 不修改代码优化 ASP.NET 网站性能的一些方法
本文将介绍一些方法用于优化ASP.NET网站性能,这些方法都是不需要修改程序代码的.它们主要分为二个方面:1. 利用ASP.NET自身的扩展性进行优化.2. 优化IIS设置. 配置OutputCach ...
- [linux]linux下安装mysql
1.安装g++$sudo apt-get install build-essential注:此命令会同时安装gcc和make2.安装cmake$sudo apt-get install cmake3. ...
- 【BZOJ】2440: [中山市选2011]完全平方数
[题意]T次询问第k小的非完全平方数倍数的数.T<=50,k<=10^9.(即无平方因子数——素因数指数皆为0或1的数) [算法]数论(莫比乌斯函数) [题解]考虑二分,转化为询问[1,x ...
- js小记:对象、原型及原型链、面向对象编程
一.js对象 1.js对象 js对象是一种复合数据类型,它可以把多个(不同类型的)数据集中在一个变量中,并且给每个数据起名字. 2.对象与数组 对象的每个数据有对应的名字(属性名),我们通过叫名字访问 ...
- HDU 3790 最短生成树 (最短路)
题目链接 Problem Description 给你n个点,m条无向边,每条边都有长度d和花费p,给你起点s终点t,要求输出起点到终点的最短距离及其花费,如果最短距离有多条路线,则输出花费最少的. ...
- 面向过程编程(OPP) 和面向对象编程(OOP)的关系
面向过程编程(OPP) 和面向对象编程(OOP)的关系 原文链接:http://blog.csdn.net/phphot/article/details/3985480 关于面向过程的编程(OPP)和 ...
- PDFRender4NET的使用之pdf转图片
同样的需要第三方的.dll,http://www.o2sol.com/pdfview4net/download.htm using O2S.Components.PDFRender4NET; usin ...
- NLP基础 成分句法分析和依存句法分析
正则匹配: .除换行符所有的 ?表示0次或者1次 *表示0次或者n次 a(bc)+表示bc至少出现1次 ^x.*g$表示字符串以x开头,g结束 |或者 http://regexr.com/ 依存句法分 ...
- C#串口serialPort操作
现在大多数硬件设备均采用串口技术与计算机相连,因此串口的应用程序开发越来越普遍.例如,在计算机没有安装网卡的情况下,将本机上的一些信息数据 传输到另一台计算机上,那么利用串口通信就可以实现.运行本程序 ...
- 自组织神经网络介绍:自组织特征映射SOM(Self-organizing feature Map),第三部分
前面两篇介绍了SOM的基本概念和算法,第一部分,第二部分,本篇具体展开一下应用中的一些trick设定. SOM设计细节 输出层设计 输出层神经元数量设定和训练集样本的类别数相关,但是实际中我们往往不能 ...