1010: qaq的序列價值
時間限制: 3 sec 記憶體限制: 128 mb
提交: 60 解決: 13
[提交][狀態][討論版]
題目描述
qaq有乙個序列,元素個數有n
個。他認為乙個序列的價值的是:該序列中不同元素之和。
比如說:序列(1,1,2,2)
價值為3
。 現在qaq想知道所有子串行的價值之和。
輸入 第一行輸入乙個整數t
,代表有t組測試資料。
每組資料佔兩行,第一行輸入乙個整數n,代表序列元素個數。
接下來一行輸入n個整數a。
注:1<=t<=10000,1<=n<=50,1<=a<=10
。 輸出
對每組測試資料,輸出乙個整數代表所有子串行價值之和。
結果很大,請對(109+7)
取餘。
樣例輸入
2 3
1 1 1
4 10 10 10 8
樣例輸出
7 204
提示對於第二組測試資料一共有15
個子序列:
(10)、(10)、(10)、(8)、(10,10)、(10,10)、(10,10)、
(10,8)、(10,8)、(10,8)、(10,10,8)、(10,10,8)、
(10,10,8)、(10,10,10)、(10,10,10,8)。價值之和為204。
記元素總個數為sum,可以轉化一下公式即:sum!/a[i]!∗a[i+1]!∗…∗a[n]!
時間複雜度o(n∗logn)。
ac** :
#include
#include
using
namespace
std;
typedef
long
long ll;
const ll mod = 1e9 + 7;
int num[12];
ll pa[56];
int main()
ll ans = 0,sum,cut;
for(i = 1 ; i < ( 1
<< 10) ; i++)
}ans = (ans + cut * sum % mod) % mod;
}printf("%lld\n",ans);
}return
0;}
HPU 1010 QAQ的序列價值 狀態壓縮
時間限制 3 sec 記憶體限制 128 mb 提交 60 解決 13 提交 狀態 討論版 qaq有乙個序列,元素個數有n n個。他認為乙個序列的價值的是 該序列中不同元素之和。比如說 序列 1,1,2,2 1,1,2,2 價值為3 3。現在qaq想知道所有子串行的價值之和。第一行輸入乙個整數t t...
HPU 1009 QAQ的區間價值
1009 qaq的區間價值 時間限制 1 sec 記憶體限制 128 mb 提交 75 解決 49 提交 狀態 討論版 題目描述 qaq有乙個整數序列,元素個數有n 個,分別為1,2,3 n 1,n。假定用陣列a來依次記錄n個元素,那麼區間 i,j 的價值 sum i,j check i,j 其中s...
hpu 1012 QAQ的區間統計
時間限制 1 sec 記憶體限制 128 mb 提交 142 解決 42 提交 狀態 討論版 qaq有乙個區間 l,r 已知qaq很喜歡長度為奇數的區間,現在請你告訴他有多少個長度為奇數的子區間。對於區間 2 4 來講,它的子區間有 2 2 2 3 2 4 3 3 3 4 4 4 共6個。為了簡化題...