首页 > 其他分享 >cf 598 A

cf 598 A

时间:2023-08-15 17:38:07浏览次数:27  
标签:__ int 598 sum cf per int64 test


A. Tricky Sum



time limit per test



memory limit per test



input



output



1 to n, but you should take all powers of two with minus in the sum.

n = 4 the sum is equal to  - 1 - 2 + 3 - 4 =  - 4, because 1, 2 and 4 are 20, 21 and 22

t values of n.



Input



t (1 ≤ t ≤ 100) — the number of values of n

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



Output



t integers n



Sample test(s)



input



2 4 1000000000



output



-4 499999998352516354



Note



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




#include <bits/stdc++.h>
using namespace std;


int main()
{
    int t;
    scanf("%d",&t);
    while(t--)
    {
        __int64 n,sum,res=1,a=1;
        scanf("%I64d",&n);
        sum=(n*(n+1))/2;
        for(__int64 i=1;i<35;i++)
        {
            a*=2;
            if(a<=n)
                res+=a;
            else
                break;
        }
        printf("%I64d\n",sum-2*res);
    }
    return 0;
}



标签:__,int,598,sum,cf,per,int64,test
From: https://blog.51cto.com/u_3936220/7091374

相关文章

  • cf 583 B. Robot's Task(模拟)
    链接:http://codeforces.com/problemset/problem/583/B//求改变的方向次数//直接模拟题目是从1开始所以从左到右从右到左#include<stdio.h>#include<algorithm>usingnamespacestd;inta[1000+10];intvis[1000+10];intmain(){intn,t=0;scanf("%d",&n);......
  • CF杂题选刷
    CF1855BLongestDivisorsInterval对于任意一个区间\(\left[l,r\right]\),一定有\(\foralli\in\left[1,r-l+1\right]\),都\(\existsj\in\left[l,r\right]\),使得\(i\midj\)。因为模\(i\)意义下的正整数每\(i\)个一循环,由于\(i\)小于区间长度,所以在这个......
  • WCF
    WCF概念一.SOA概念面向服务的架构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)进行拆分,并通过这些服务之间定义良好的接口和协议联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种各样的系统中的服......
  • 题解 CF379D New Year Letter
    思路提供一种比较容易想到的做法。拿到题看数据范围发现都很小,所以放心大胆地暴力。容易发现\(s_i\)中AC的个数等于\(s_{i-2}\)中AC的个数加\(s_{i-1}\)中AC的个数再加上两者拼接处可能有的一个AC。所以\(s_1\)和\(s_2\)从第二个字符到倒数第二个字符这之间......
  • CF1845D Rating System 题解
    题面给定一个长度为\(n\)数列\(a\),保证每项都不为\(0\)。初始时\(x=0\),然后对于\(1\lei\len\),按顺序进行如下操作:如果\(x\gek\),则\(x\rightarrow\max(k,x+a_i)\),否则\(x\rightarrowx+a_i\)。你需要求出\(k\),使得\(x\)的值尽量大。题解如果我们不考虑\(k......
  • CF793F Julia the snail 题解
    题意有一个长为\(n\)的杆,上面有\(m\)条绳子,每条绳子可以让蜗牛从\(l_i\)爬到\(r_i\)(中途不能离开),保证\(r_i\)各不相同。蜗牛也可以自然下落。现在有\(q\)次询问,询问\(x\)出发,途中高度不能低于\(x\)或高于\(y\),问最高能爬到的位置。\(n,m,q\leq10^5\)。题解......
  • CF1859C 题解
    思路我们实际上发现它计算的就是\(p_i\cdoti\)的和再减去一个\(p_i\cdoti\)中的最大值。那我们可以枚举这个最大值\(p_x\cdotx\),这个值就是最后和中需要删除的数值。这里我们可以使用贪心。我们可以从\(n\sim1\)枚举除\(p_i\)的每个数字需要配的数字。当然,......
  • CF1859B 题解
    题意给定\(n\)个长度为\(m\)的数组,每个数组可以向别的数组转移最多一个数字,任意一个数组都可以接受无穷多的数字,最大化每个数组的最小值之和。做法考虑贪心。我们记第\(i\)个数组的第\(j\)个数字为\(a_{i,j}\)。我们先对每一个数组按照升序进行排序,那我们最不愿意......
  • cf1849做题记录
    A题面分类讨论\(b+c\)和\(a\)的大小即可。点击查看代码#include<bits/stdc++.h>#defineullunsignedlonglong#definelllonglong#definepiipair<int,int>#definepdipair<double,int>#definepbpush_back#defineeps1e-9#definempmake_pairus......
  • [nc 记录] CF13333E Road to 1600
    赛时没做出来一直在往随机想。题意挺明确。发现到\(n\timesn\)这个条件,联想到做过的CF1172D,递归去掉一行一列的基本想法就有了。那么让两个棋子从右下开始,走完多出的一行一列,然后走进剩余的\((n-1)\times(n-1)\)。真可以?这就是*2400的构造?这我还能想不出来?只用构造......