zoukankan      html  css  js  c++  java
  • 美团点评2019秋招--外卖满减

    题目描述

    打开了美了么外卖,选择了一家店,你手里有一张满X元减10元的券,店里总共有n种菜,第i种菜一份需要A_i元,因为你不想吃太多份同一种菜,所以每种菜你最多只能点一份,现在问你最少需要选择多少元的商品才能使用这张券。

    输入描述:
    第一行两个正整数n和X,分别表示菜品数量和券的最低使用价格。(1≤n≤100, 1≤X≤10000) 接下来一行n个整数,第i个整数表示第i种菜品的价格。(1≤A_i≤100)
    输出描述:
    一个数,表示最少需要选择多少元的菜才能使用这张满X元减10元的券,保证有解。
    示例1

    输入

    5 20
    18 19 17 6 7

    输出

    23
    官方解题思路:
    01背包
    找大于等于X的最小可达状态
    官方题解:
    #include <bits/stdc++.h>
    using namespace std;
    const int N=10100+5;
    int n,X,C;
    int dp[N];
    int main(){
        scanf("%d%d",&n,&X);
        C=X+100;
        dp[0]=1;
        for(int i=0;i<n;++i){
            int a;
            scanf("%d",&a);
            for(int j=C;j>=a;--j){
                dp[j]|=dp[j-a];
            }
        }
        for(int i=X;i<=C;++i){
            if(dp[i]==1){
                printf("%d
    ",i);
                break;
            }
        }
        return 0;
    }
    不一样的烟火
  • 相关阅读:
    [LeetCode] Rotate Image
    [LeetCode] Generate Parentheses
    pandas 使用总结
    ConfigParser 读写配置文件
    Cheat Sheet pyspark RDD(PySpark 速查表)
    python随机生成字符
    grep 命令
    hadoop 日常使用记录
    python 2 计算字符串 余弦相似度
    screen命令
  • 原文地址:https://www.cnblogs.com/cstdio1/p/11302440.html
Copyright © 2011-2022 走看看