(二) Q - Q tricky sum

原创 2016年06月01日 13:49:31
Q - Q
Time Limit:1000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u

Description

In this problem you are to calculate the sum of all integers from 1 to n, but you should take all powers of two with minus in the sum.

For example, for n = 4 the sum is equal to  - 1 - 2 + 3 - 4 =  - 4, because 12 and 4 are 2021 and 22 respectively.

Calculate the answer for t values of n.

Input

The first line of the input contains a single integer t (1 ≤ t ≤ 100) — the number of values of n to be processed.

Each of next t lines contains a single integer n (1 ≤ n ≤ 109).

Output

Print the requested sum for each of t integers n given in the input.

Sample Input

Input
2
4
1000000000
Output
-4
499999998352516354

Hint

The answer for the first sample is explained in the statement.


题意:求从1 到n的和,2的次幂为负,其他为正

 先把n内2的次幂数加起来,1-n的和减去2*上面的和

代码:

#include <cstdio>
int main()
{
    int t;
    long long n,sum1,sum2;
    scanf("%d",&t);
    while(t--)
    {
        sum1=0;
        sum2=0;
        scanf("%lld",&n);
        for(int i=1;i<=n;i*=2)
        {
            sum1+=i;
        }
        sum2=(1+n)*n/2;
        sum2=sum2-2*sum1;
        printf("%lld\n",sum2);
    }
    return 0;
}



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

相关文章推荐

kdb+q一个入库和删除的小demo

在项目和实践中学习是最好的学习方法,所以,啥都别说,看代码依葫芦画瓢就干吧

AngulerJS学习(五)按需动态加载文件

在此之前我么年首先要先了解几个东西:$q简介:$q:主要解决的是异步编程的问题,是指描述通过一个承诺行为与对象代表的异步执行的行动结果的交互,可能会也可能不会再任何时候完成。我们通过一个小故事理解 ...

精选:深入理解 Docker 内部原理及网络配置

网络绝对是任何系统的核心,对于容器而言也是如此。Docker 作为目前最火的轻量级容器技术,有很多令人称道的功能,如 Docker 的镜像管理。然而,Docker的网络一直以来都比较薄弱,所以我们有必要深入了解Docker的网络知识,以满足更高的网络需求。

关于统计学中q-q图为什么正态分布是一条直线(R语言绘图说明)

q-q图的概念说明
  • rav009
  • rav009
  • 2014-10-13 15:51
  • 7965

基于 Quartz 开发企业级任务调度应用

基于 Quartz 开发企业级任务调度应用  http://www.ibm.com/developerworks/cn/opensource/os-cn-quartz/ Quartz 是 OpenS...

Angularjs $q详解

作为angularjs入门的小白,相信大家对$q,promise都比较陌生,现转载整理这篇,大家一起学习吧。下面我们通过讲解$q的API让你更多的了解promise异步编程模式。$q是做为angula...

AngularJS 中的Promise --- $q服务详解

先说说什么是Promise,什么是$q吧。Promise是一种异步处理模式,有很多的实现方式,比如著名的Kris Kwal's Q还有JQuery的Deffered。 什么是Promise 以...

AngularJS 中的Promise --- $q服务详解

先说说什么是Promise,什么是$q吧。Promise是一种异步处理模式,有很多的实现方式,比如著名的Kris Kwal's Q还有JQuery的Deffered。 什么是Promise ...

AngularJS—$q

描述 既然是用来处理异步编程的,那么在浏览器端的js里,主要是2种: setTimeout 和 Ajax 请求. promise 的使用就很像Ajax请求的成功和失败回调。   此承诺/延迟(p...

Django的Q查询

Complex lookups with Q objects(Q对象的复杂查询) 仅仅靠单一的关键字参数查询已经很难满足查询要求。此时Django为我们提供了Q查询: class Q ...
  • celte
  • celte
  • 2014-07-09 15:01
  • 1521

Angular $q 完全指南

本文转自:点击打开链接 如果想使用 $http 或者其他异步操作, 那 $q 是必须要掌握的概念啦. Let's get started! 如何理解$q, deferred obj...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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