HPU 1010 QAQ的序列價值

2021-07-24 09:26:13 字數 1226 閱讀 7274

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個。為了簡化題...