当前位置: 首页 > news >正文

餐饮培训网站建设手机网站建设的影响

餐饮培训网站建设,手机网站建设的影响,瑞安商业网站建设,电动工具咋在网上做网站Description 给你一个整数数组,请你在其中选取若干个元素, 使得其和值能被 k 整除,输出和值最大的那个和值。 最后的数字可能很大,所以结果需要对 19260817 取模。 Input 第一行是两个正整数 n,k:表示数…

Description

给你一个整数数组,请你在其中选取若干个元素,
使得其和值能被 k 整除,输出和值最大的那个和值。
最后的数字可能很大,所以结果需要对 19260817 取模。

Input

第一行是两个正整数 n,k:表示数组的长度,以及被整除的除数 k。
接下来是 n 行,每行是一个正整数 num_i,表示数组中第 i 个数。
n <= 10^5,  k <= 100, num_i <= 10^9。

Output

能被 k 整除的元素最大和。

Sample Input

5 3
3
5
1
8
6

Sample Output

18

思路:

将n个数取余分到0-(k-1)数组内,然后dp,dp[i][j]代表前0-i内的数相加,余数为j的最大值。

#define _CRT_SECURE_NO_WARNINGS 
#include<iostream>
#include<string>
#include<cstring>
#include<cmath>
#include<ctime>
#include<algorithm>
#include<utility>
#include<stack>
#include<queue>
#include<vector>
#include<set>
#include<math.h>
#include<map>
#include<unordered_map>
using namespace std;
typedef long long LL;
typedef unsigned long long ULL;
const int N = 1000;
LL dp[110][110];
vector<LL> p[110];
LL n,k,x;
bool cmp(LL x, LL y)
{
    return x > y;
}
int main() {
    cin >> n >> k;
    for (int i = 1; i <= n; i++)
    {
        scanf("%lld", &x);
        p[x % k].push_back(x);
    }
    for (int i = 0; i <= k-1; i++) 
    sort(p[i].begin(), p[i].end(), cmp);
    x = 0;
    for (int i = 0; i <p[0].size(); i++)
        x += p[0][i];
    dp[0][0] = x;
    for (int i = 1; i <= k - 1; i++)
    {
        LL sum = 0;
        for (int j = 0; j < p[i].size(); j++)
        {
            sum += p[i][j];
            x = (j + 1) * i % k;
            for (int w = 0; w <= k - 1; w++)
            {
                if (j == 0) dp[i][w] = max(dp[i - 1][w], dp[i][w]);
                if (dp[i - 1][w])
                    dp[i][(x + w) % k] = max(dp[i][(x + w) % k], dp[i - 1][w] + sum);
            }
        }
    }
    cout << dp[k-1][0] % 19260817 << endl;
    return 0;
}

http://www.yayakq.cn/news/236398/

相关文章:

  • 程序员能转行做网站维护不邢台做移动网站报价
  • 宁波网站公司网站有个栏目不想被搜索引擎收录要怎么办
  • 网站建设硬件设备wordpress seo plugin
  • 天河网站开发网站开发目标开题报告
  • pc端网站怎么做自适应手机端西安官网seo价格
  • 网站建设最简单的教程长沙建站优化
  • 手机版自适应网站怎么做佛山网站优化
  • 医疗网站建设要多少钱开锁做网站哪个好
  • 网络叶子 网站推广永修建设局网站
  • 解析域名后怎么弄网站企业 手机网站
  • 电子邀请函免费制作app网站优化都是怎么做的
  • 做网站的启蒙思想西安网站开发的未来发展
  • 中国建材网官方网站免费的软件大全下载
  • 让人家做网站需要问什么问题衡阳网站建设mdawl
  • 济南网站制作推广网站制作公司怎么看
  • 网站推广初期目标一个很好的个人网站开发
  • 高端网站建设套餐建筑八大员培训机构
  • 大眼睛网站建设怎样查看网站备案号
  • 课件ppt模板免费下载网站科技副总
  • 潍坊网站建设wf3建设网站江西
  • 网站租房做公寓北京互联网企业有哪些
  • 东城网站制作公司搜索关键词排名
  • 律师网站设计网站开发时如何兼容
  • 科技公司网站设计服务哪个网站能在线做司考题目
  • 温州专业微网站制作公司哪家好网站站内站建设现状
  • 广东网站建设公司网络服务做网站别人输账号代码
  • iis7 多个网站 80端口东莞网络优化
  • 南京做网站公司网络营销比较常用的营销模式
  • 大航母网站建设怎么样大的网站建设公司
  • 网站网站制作服务桂林市是几线城市