标签:ini -o class decide first ble ace this ++
InputThe first line of the input gives the number of test cases, T(1≤100)T(1≤100). TT test cases follow.
Each test case begins with two numbers N(1≤N≤103)N(1≤N≤103) and M(1≤M≤N)M(1≤M≤N), indicating the number of information and number of information Gai Huang will select. Then NN numbers in a line, the ithithnumber ai(1≤ai≤109)ai(1≤ai≤109) indicates the value in Cao Cao‘s opinion of the ithith information in happening order.OutputFor each test case, output one line containing Case #x: y, where xx is the test case number (starting from 1) and yy is the ways Gai Huang can select the information.
The result is too large, and you need to output the result mod by 1000000007(109+7)1000000007(109+7).Sample Input
2 3 2 1 2 3 3 2 3 2 1
Sample Output
Case #1: 3 Case #2: 0
Hint
In the first cases, Gai Huang need to leak 2 information out of 3. He could leak any 2 information as all the information value are in increasing order. In the second cases, Gai Huang has no choice as selecting any 2 information is not in increasing order.
#include<bits/stdc++.h> using namespace std; typedef long long ll; const int maxn=100010; const int mod=1e9+7; int a[maxn],lsh[maxn]; int n,m; int dp[1010][1010]; int lowbit(int x) { return x&-x; } void add(int x,int y,ll val) { for(int i=x;i<=n;i+=lowbit(i)){ dp[i][y]=(dp[i][y]+val)%mod; } } int sum(int x,int y) { int ans=0; for(int i=x;i>=1;i-=lowbit(i)){ ans=(ans+dp[i][y])%mod; } return ans; } int main() { ios::sync_with_stdio(0); int T,k=1; cin>>T; while(T--){ memset(dp,0,sizeof(dp)); cin>>n>>m; for(int i=1;i<=n;i++){ cin>>a[i]; lsh[i]=a[i]; } sort(lsh+1,lsh+1+n); // int len=unique(lsh+1,lsh+1+n)-lsh-1;//去不去重都一样啦,下面是lowerbound for(int i=1;i<=n;i++){ int x=lower_bound(lsh+1,lsh+1+n,a[i])-lsh; add(x,1,1); for(int j=2;j<=m;j++){ add(x,j,sum(x-1,j-1)); } } cout<<"Case #"<<k++<<": "; cout<<sum(n,m)<<endl; } return 0; }
C - The Battle of Chibi HDU - 5542 (树状数组+离散化)
标签:ini -o class decide first ble ace this ++
原文地址:https://www.cnblogs.com/cherish-lin/p/11323735.html