HDU2189 悼念512汶川大地震遇難同胞——來生一起走 【母函數】

來源:互聯網
上載者:User

標籤:hdu2189

悼念512汶川大地震遇難同胞——來生一起走Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2328    Accepted Submission(s): 1157

Problem Description媽媽
你別哭
淚光照亮不了
我們的路
讓我們自己
慢慢的走

媽媽
我會記住你和爸爸的模樣
記住我們的約定
來生一起走



上面這首詩節選自一位詩人紀念遇難同胞的作品,並沒有華麗的語言,但是每位讀者都應該能感受到作品傳達的濃濃愛意,也許還有絲絲無奈。確實,太多的關於孩子不幸的報道衝擊著我們每一顆柔弱的心。正如溫家寶總理所說“多難興邦”,這場災難讓我們很多80後的年輕人一下子成熟了起來,其中很多人以自願者的身份走上了抗震救災的第一線。
今天,災區又來了n位志願者,抗震救災指揮部需要將他們分為若干個小組,小組的數量不限,但是要求每個小組的人數必須為素數,請問我們有幾種分組的方法呢?

特別說明:
1、可以只有一個組;
2、分組的方法只和人數有關,而與具體的人員無關,即:你可以假設人是無區別的。
 
Input輸入資料首先包含一個正整數C,表示有C組測試案例,然後是C行資料,每行包含一個正整數n(2<=n<=150),表示志願者的總人數。 
Output對於每組測試資料,請輸出分組的方案數目,每個輸出佔一行。 
Sample Input
3345
 
Sample Output
112
 

#include <stdio.h>#include <string.h>#include <math.h>#define maxn 160int c1[maxn], c2[maxn], prime[maxn];bool isPrime(int n){int t = sqrt(n);for(int i = 2; i <= t; ++i)if(n % i == 0) return 0;return 1;}int main(){int i, id = 0, j, k, t, n;for(i = 2; i < 156; ++i)if(isPrime(i)) prime[id++] = i;for(i = 0; i < maxn; i += 2)c1[i] = 1;for(i = 1; prime[i] <= 150; ++i){for(j = 0; j <= 150; ++j)for(k = 0; k + j <= 150; k += prime[i])c2[j+k] += c1[j];for(j = 0; j <= 150; ++j){c1[j] = c2[j]; c2[j] = 0;}}scanf("%d", &t);while(t--){scanf("%d", &n);printf("%d\n", c1[n]);}return 0;}


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.