首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

2012长春市网络赛赛后【缺D】

2012-10-11 
2012长春网络赛赛后【缺D】AA Simple Problem with Integers (HDU 4267)树状树组维护arr[i]-arr[i-1],实现成

2012长春网络赛赛后【缺D】


A  A Simple Problem with Integers (HDU 4267)
树状树组维护arr[i]-arr[i-1],实现成段更新单点查询。

DP什么的最坑最烦了

2012长春市网络赛赛后【缺D】
#include<set>#include<iostream>using namespace std;long t,n,a[20],sum,x,y,z;set<long>s;void dfs(int i){    if(i==n)    {        if(x&&x<=y&&x<=z&&y<=z&&x+y>z) s.insert(x<<16|y);        return;    }    x+=a[i];dfs(i+1);x-=a[i];    y+=a[i];dfs(i+1);y-=a[i];    z+=a[i];dfs(i+1);z-=a[i];}int main(){    for(cin>>t;t;t--)    {        cin>>n;sum=x=y=z=0;s.clear();        for(int i=0;i<n;i++) cin>>a[i],sum+=a[i];        dfs(0);        cout<<s.size()<<endl;    }    return 0;}



热点排行