time limit: 1 sec
memory limit: 128 mb
submit: 254
solved: 36 [
submit][
status][
web board]
埃森哲的小q最近在做市場調研,每天要打很多的**。一天打的累了,正在喝咖啡休息。不過愛動腦筋的小q的腦袋可沒有閒著,他在思考這樣一件事:如果一共有n個人(編號1-n),假設所有人都相互認識。每個人都擁有一部**,且每時每刻他們都有可能在跟另乙個人通話(當然也可以沒有打**而在幹別的事情)。
我們假設每次通話只限於兩人通話,則在某個時刻,我們突然檢查所有人的狀態,我們想知道所有人的通話狀態數有多少種。舉個栗子(為什麼是栗子!):當前有2個人,則在某個時刻,我們突然檢查這2個人的狀態,則總共有2種情況,要麼1號和2號在通話,要麼各自在做著別的事情。
當然聰明的小q想的問題不會這麼簡單,小q還會給出更多的約束,即已知在檢查的那個時刻,有m個人一定不在通話中。現在請你計算一下總的情況數。
多組測試資料。
對於每組資料:
第1行:輸入兩個整數n和m(1 <= n <= 1,000,000, 0 <= m <= n)。
第2行:輸入m個整數ai(1 <= ai <= n)分別代表那些肯定不在通話的人編號,我們保證輸入序列沒有重複數。
對於每組資料,輸出一行,包含乙個整數,代表總的情況數。由於最後答案過大,請把答案對1,000,000,007(1e9 + 7)取模後輸出。
2 122 0
12定義函式f(x,y)為共n個人,有m個人一定沒有打**時,總的情況數。
發現,這m個人不會對剩下的人造成影響,而且他們只存在一種情況,都不打**。
所以轉化為,f(x,y) = f(x-y,0)。定義f(x) = f(x,0)
如何計算f(x)?
假設有序。若第x個人不打**,則同上討論結果,轉化為相同子問題f(x-1)。若第x個人打**,則他只能和剩餘x-1個人中乙個人打**,有x-1種選擇。並且這兩個人都不能再和別人打**,因此轉化為相同子問題f(x-2)。則f(x) = f(x-1)+(x-1)*f(x-2)。
#include #include #include inline int getint()
do res=(res<<3)+(res<<1)+tmp-'0';
while (isdigit(tmp=getchar()));
return sgn?res:-res;
}typedef long long ll;
const ll mod = 1000000007;
ll f[1000010];
int main()
int n,m;
bool first = true;
while (scanf("%d%d",&n,&m)==2)
return 0;
}
通話降噪ENC
通話降噪有enc及cvc,今天則介紹一下enc降噪技術,enc environment noise cancellation 環噪消除,主要是針對通話中針對環境雜訊進行處理,利用一些自適應濾波技術或者beamforming指向增強技術進行將通話語音更加清晰的傳送給對方 當下通話降噪技術分為三種 be...
普通話讀音
草 第三音調 cao 此 第三音調 ci 次 第四音調 ci 詞 第二音調 ci 刺 第四音調 ci 磁 第二音調 ci 辭 第二音調 ci 瓷 第二音調 ci 慈 第二音調 ci 賜 第四音調 ci 茨 第二音調 ci 錯 第四音調 cuo 灑 第三音調 sa 三 第一音調 san 思 第一音調 ...
Android 預設通話應用
專案中有個彩鈴需求,所以用到了預設通話,在android10之後,請求預設通話許可權發生了改變,故整理 關於替換系統的預設通話,需要提供如下幾點 1.提供uiactivity,在登錄檔中需要有如下配置 2.提供service,在登錄檔中也需要如下配置 class phonecallservice e...