LQB2018A09倍数问题

这个题,第一反应一定是三个for嵌套加一个max比较.
超级无敌大暴搜
#include <iostream>
#include <string>
#include <string.h>
using namespace std;
long MAX=;
int main(){
long m[+]; int n,K;
cin>>n>>K;
for (int i = ; i < n; ++i) {
cin>>m[i]; }
for (int j = ; j < n; ++j) {
for (int i = j + ; i < n; ++i) {
for (int k = i + ; k < n; ++k) {
if ((m[j]+m[k]+m[i])%K== && (MAX<m[j]+m[i]+m[k]) ){ MAX=m[j]+m[i]+m[k];
} } } }
cout<<MAX; }
/*
*这是官方题解,但是我觉得有点问题,我会再改一下的
*/ #include <iostream>
#include <string>
#include <string.h>
#include <vector>
using namespace std;
int n,K;
long MAX=;
int x;
void work(){
cin>>n>>K; vector<vector<int>> group(K,vector<int>()); int re;
for (int i = ; i < n; ++i) {
cin>>x;
re=x%K;
//cout<<re<<endl;
if(x>group[re][]){//初始值均为0,所以没有问题
group[re][]=group[re][];
group[re][]=group[re][];
group[re][]=x;
}
else if(x>group[re][]){
group[re][]=group[re][];
group[re][]=x; } else
group[re][]=x;
//cout<<re<<":"<<group[re][0]<<" "<<group[re][1]<<" "<<group[re][2]<<endl;
} long v1,v2,v3;
for (int j = ; j < K; ++j) {
for (int i = j; i < K; ++i) {
if(group[j][]==)
continue;
int kk=(K-i+K-j)%K;
v1=group[j][];
//cout<<"v1分别是"<<v1<<endl;
if(i==j) {
// if(!group[i][1])
// continue;
v2 = group[i][];
if(j==kk) {
// if(!group[j][2])
// continue;
v3 = group[j][];
}
else {
// if(!group[kk][0])
// continue; v3 = group[kk][];
}
}
else{
// if(!group[i][0])
// continue;
v2=group[i][];
if(j==kk){
// if(!group[j][1])
// continue;
v3=group[j][];
} else if(i==kk) { v3 = group[kk][];
} else { v3 = group[kk][];
} }
if(v1+v2+v3>MAX)
//cout<<v1<<" "<<v2<<" "<<v3<<endl;
MAX=v1+v2+v3;
//cout<<MAX; }
}
cout<<MAX;
}
int main(){
work();
return ; }
LQB2018A09倍数问题的更多相关文章
- [转]倍数提高工作效率的 Android Studio 奇技
转自:http://android.jobbole.com/81687/ 倍数提高工作效率的 Android Studio 奇技 2015/10/08 · 技术分享 · 4 评论· Android S ...
- 51nod 1109 01组成的N的倍数
用01 组成 N的最小倍数 这个BFS搜索就好. 类似这道: ZOJ Problem Set - 1530 每次 要么是0 要么是1, 记入余数,和前驱. #include<bits/stdc ...
- Python练习题 029:Project Euler 001:3和5的倍数
开始做 Project Euler 的练习题.网站上总共有565题,真是个大题库啊! # Project Euler, Problem 1: Multiples of 3 and 5 # If we ...
- Codeforces Round #276 (Div. 1) B. Maximum Value 筛倍数
B. Maximum Value Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/484/prob ...
- Oracle PL/SQL 找出100以内是3和5的倍数的数 循环语句
循环: loop --执行代码 exit when 表达式;--当表达式为真退出循环.(注意,其编写位置决定循环为先判断还是先执行,相当于java的while或do-while) end loop; ...
- 用if else 判断是不是7的倍数等
static void Main(string[] args) { while (true) { int b; ...
- NYOJ--517--最小公倍数(大数打表)
最小公倍数 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 为什么1小时有60分钟,而不是100分钟呢?这是历史上的习惯导致. 但也并非纯粹的偶然:60是个优秀的数字 ...
- 百度之星2017初赛A轮 1001 小C的倍数问题
小C的倍数问题 Accepts: 1990 Submissions: 4931 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/3 ...
- 51nod 1103 N的倍数 思路:抽屉原理+前缀和
题目: 这是一道很神奇的题目,做法非常巧妙.巧妙在题目要求n个数字,而且正好要求和为n的倍数. 思路:用sum[i]表示前i个数字的和%n.得到sum[ 1-N ]共N个数字. N个数字对N取模,每个 ...
随机推荐
- P2114 [NOI2014]起床困难综合症【二进制运算+优化】
起床困难综合症[二进制运算+优化] 题目描述 21世纪,许多人得了一种奇怪的病:起床困难综合症,其临床表现为:起床难,起床后精神不佳.作为一名青春阳光好少年,atm一直坚持与起床困难综合症作斗争.通过 ...
- Js中各种类型的变量在if条件中是true还是false
如果操作数是一个对象,返回true如果操作数是一个空字符串,返回false如果操作数是一个非空字符串,返回true如果操作数是数值0,返回false如果操作数是任意非0数值(包括Infinity),返 ...
- (私人收藏)React教程手册
React教程手册 https://pan.baidu.com/s/1ka2PJ54HgqJ8lC6XgbvdLg pedx React 教程 含有3个附件,如下: react.js react-do ...
- JavaScript之DOM的增删改查
JavaScript的组成: 1. ECMAScript-语法规范 2. Web APIs(浏览器提供的工具) (1).BOM (浏览器对象模型) (2).DOM (文档对象模型) 今天就来讲讲DOM ...
- vue.js之常操作(实例)
听说大家都开始用react.vue这些MVVM框架了,为了不落后,还是学学吧!(之前只对angular了解一点,时间一长,也忘得差不多了,所以学习vue相当于从小白开始) 从vue.js官网看一下,先 ...
- HDU 2236 无题Ⅱ
HDU 2236 无题Ⅱ 题目大意 这是一个简单的游戏,在一个\(n*n\)的矩阵中,找n个数使得这n个数都在不同的行和列里并且要求这n个数中的最大值和最小值的差值最小. solution 暴枚\(i ...
- Instrction Arrangement UDH 4109 拓扑排序 or 最长路
题目描述 Ali has taken the Computer Organization and Architecture course this term. He learned that ther ...
- 分享一个集成.NET Core+Swagger+Consul+Polly+Ocelot+IdentityServer4+Exceptionless+Apollo+SkyWalking的微服务开发框架
集成.NET Core+Swagger+Consul+Polly+Ocelot+IdentityServer4+Exceptionless+Apollo的微服务开发框架 Github源代码地址 htt ...
- mysql中给查询结果添加序号
当我们想为查询结果添加序号的时候可以这样写 SELECT @rowid:=@rowid+1 allid, pan_number, receive_person,time_note, url,unit_ ...
- Java并发编程——为什么要用volatile关键字
首发地址 https://blog.leapmie.com/archives/66ba646f/ 日常编程中出现 volatile 关键字的频率并不高,大家可能对 volatile 关键字比较陌生,再 ...