包子湊數(shù)

http://lx.lanqiao.cn/problem.page?gpid=T440

問題描述
  小明幾乎每天早晨都會在一家包子鋪吃早餐。他發(fā)現(xiàn)這家包子鋪有N種蒸籠,其中第i種蒸籠恰好能放Ai個包子。每種蒸籠都有非常多籠供填,可以認為是無限籠。

每當有顧客想買X個包子,賣包子的大叔就會迅速選出若干籠包子來兰吟,使得這若干籠中恰好一共有X個包子。比如一共有3種蒸籠茂翔,分別能放3混蔼、4和5個包子。當顧客想買11個包子時珊燎,大叔就會選2籠3個的再加1籠5個的(也可能選出1籠3個的再加2籠4個的)惭嚣。

當然有時包子大叔無論如何也湊不出顧客想買的數(shù)量遵湖。比如一共有3種蒸籠,分別能放4晚吞、5和6個包子延旧。而顧客想買7個包子時,大叔就湊不出來了槽地。

小明想知道一共有多少種數(shù)目是包子大叔湊不出來的迁沫。
輸入格式
  第一行包含一個整數(shù)N。(1 <= N <= 100)
  以下N行每行包含一個整數(shù)Ai捌蚊。(1 <= Ai <= 100)
輸出格式
  一個整數(shù)代表答案集畅。如果湊不出的數(shù)目有無限多個,輸出INF缅糟。
樣例輸入
2
4
5
樣例輸出
6
樣例輸入
2
4
6
樣例輸出
INF
樣例說明
  對于樣例1挺智,湊不出的數(shù)目包括:1, 2, 3, 6, 7, 11。
  對于樣例2窗宦,所有奇數(shù)都湊不出來赦颇,所以有無限多個。
數(shù)據(jù)規(guī)模和約定
  峰值內(nèi)存消耗(含虛擬機) < 256M
  CPU消耗 < 1000ms

請嚴格按要求輸出迫摔,不要畫蛇添足地打印類似:“請您輸入...” 的多余內(nèi)容沐扳。

注意:
  main函數(shù)需要返回0;
  只使用ANSI C/ANSI C++ 標準;
  不要調(diào)用依賴于編譯環(huán)境或操作系統(tǒng)的特殊函數(shù)。
  所有依賴的函數(shù)必須明確地在源文件中 #include <xxx>
  不能通過工程設(shè)置而省略常用頭文件句占。

提交程序時沪摄,注意選擇所期望的語言類型和編譯器類型。

這是正解 下面還有個騙分的
refer to
https://blog.csdn.net/qq_34594236/article/details/70803797

#include <stdio.h>
#include <iostream>
#include <cstring>
#include <vector>
#include <queue>
#include <map>
#include <set>
#include <sstream>
#include <algorithm>
int N, M;
using namespace std;
const int si =10007;
bool dp[10007];
int arr[107];

int gcd(int a, int b) {
    if (b) return gcd(b, a % b);
    return a;
}
int main() {
    scanf("%d", &N);
    for (int i = 0; i < N; i++)  {
        scanf("%d", &arr[i]);
    }

    int g = arr[0];
    for (int i = 1; i < N; i++)
    g = gcd(g, arr[i]);
    
    if (g != 1) {
        printf("INF\n");
        return 0;
    }

    dp[0] = 1;
    for (int i = 0; i < N; i++) {
        for (int j = 0; j < si - arr[i]; j++) {
            if (dp[j])
            dp[j + arr[i]] = 1;
        }
    }
    
    int ans = 0;
    for (int i = 1; i < si; i++)
    if (!dp[i]) ans++;
    cout << ans << endl;
    return 0;
}

騙分 直接當成多重背包做 設(shè)定一個閾值 要是不能搞出來的值多余這個閾值 就認為是INF 否則認為是可行的 測試表明 當閾值為1000時得到75分 3000時87分 5000時得到全分

si = 2e5
總的計算量是2e7 這道題的循環(huán)體很簡單可以大膽些設(shè)置成4e7 然后設(shè)定閾值可以設(shè)大些 更精準

測試表明 si = 4e5, 總的計算量是4e7 閾值=5000時也是100分 跑了16ms

#include <stdio.h>
#include <iostream>
#include <cstring>
#include <vector>
#include <queue>
#include <map>
#include <set>
#include <sstream>
#include <algorithm>
int N, M;
using namespace std;
const int si =20007;
bool dp[si];
int arr[107];


int main() {
    scanf("%d", &N);
    for (int i = 0; i < N; i++)  {
        scanf("%d", &arr[i]);
    }

    dp[0] = 1;
    for (int i = 0; i < N; i++) {
        for (int j = 0; j < si - arr[i]; j++) {
            if (dp[j])
            dp[j + arr[i]] = 1;
        }
    }

    int ans = 0;
    for (int i = 1; i < si; i++)
        if (!dp[i])
            ans++;

    if (ans >= 5000)
        printf("INF\n");
    else
        cout << ans << endl;
    return 0;
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末纱烘,一起剝皮案震驚了整個濱河市杨拐,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌擂啥,老刑警劉巖哄陶,帶你破解...
    沈念sama閱讀 218,451評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異哺壶,居然都是意外死亡屋吨,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,172評論 3 394
  • 文/潘曉璐 我一進店門山宾,熙熙樓的掌柜王于貴愁眉苦臉地迎上來至扰,“玉大人,你說我怎么就攤上這事资锰「铱危” “怎么了?”我有些...
    開封第一講書人閱讀 164,782評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長直秆。 經(jīng)常有香客問我濒募,道長,這世上最難降的妖魔是什么圾结? 我笑而不...
    開封第一講書人閱讀 58,709評論 1 294
  • 正文 為了忘掉前任瑰剃,我火速辦了婚禮,結(jié)果婚禮上疫稿,老公的妹妹穿的比我還像新娘培他。我一直安慰自己鹃两,他們只是感情好遗座,可當我...
    茶點故事閱讀 67,733評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著俊扳,像睡著了一般途蒋。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上馋记,一...
    開封第一講書人閱讀 51,578評論 1 305
  • 那天号坡,我揣著相機與錄音,去河邊找鬼梯醒。 笑死宽堆,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的茸习。 我是一名探鬼主播畜隶,決...
    沈念sama閱讀 40,320評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼号胚!你這毒婦竟也來了籽慢?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,241評論 0 276
  • 序言:老撾萬榮一對情侶失蹤猫胁,失蹤者是張志新(化名)和其女友劉穎箱亿,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體弃秆,經(jīng)...
    沈念sama閱讀 45,686評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡届惋,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,878評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了菠赚。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片脑豹。...
    茶點故事閱讀 39,992評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖锈至,靈堂內(nèi)的尸體忽然破棺而出晨缴,到底是詐尸還是另有隱情,我是刑警寧澤峡捡,帶...
    沈念sama閱讀 35,715評論 5 346
  • 正文 年R本政府宣布击碗,位于F島的核電站筑悴,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏稍途。R本人自食惡果不足惜阁吝,卻給世界環(huán)境...
    茶點故事閱讀 41,336評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望械拍。 院中可真熱鬧突勇,春花似錦、人聲如沸坷虑。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,912評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽迄损。三九已至定躏,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間芹敌,已是汗流浹背痊远。 一陣腳步聲響...
    開封第一講書人閱讀 33,040評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留氏捞,地道東北人碧聪。 一個月前我還...
    沈念sama閱讀 48,173評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像液茎,于是被迫代替她去往敵國和親逞姿。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,947評論 2 355

推薦閱讀更多精彩內(nèi)容