牛客网 2018校招真题 美团点评 K的倍数
Description
牛客网 2018校招真题 K的倍数
Solving Ideas
sum[i + 1]
: 表示序列p[0]...p[i]
的和
从长度最大的子串开始判断,当剩余需要判断子串长度不可能大于已得最优解时,终止循环。
Solution
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;/*** @author wylu*/
public class Main {public static void main(String[] args) throws IOException {BufferedReader br = new BufferedReader(new InputStreamReader(System.in));int n = Integer.parseInt(br.readLine());int[] p = new int[n];String[] strs = br.readLine().split(" ");for (int i = 0; i < n; i++) {p[i] = Integer.parseInt(strs[i]);}int k = Integer.parseInt(br.readLine());//sum[i + 1]: 序列p[0]...p[i]的和long[] sum = new long[n + 1];for (int i = 0; i < n; i++) sum[i + 1] = sum[i] + p[i];int res = 0;for (int i = n; i >= 1; i--) {for (int j = 0; j < i; j++) {if ((sum[i] - sum[j]) % k == 0) {res = Math.max(res, i - j);break;}}if (res >= i - 1) break;}System.out.println(res);}
}
牛客网 2018校招真题 美团点评 K的倍数相关推荐
- 牛客网 2018校招真题 美团点评 关灯游戏
Description 牛客网 2018校招真题 关灯游戏 Solving Ideas 只与最右边的数字有关,如果最右边的数字为1,则Alice赢,否则Bob赢 假设最右边的数字为1 因为Alice是 ...
- 牛客网 2018校招真题 美团点评 重要节点
Description 牛客网 2018校招真题 重要节点 Solving Ideas BFS 创建一个标记数组arrive,arrive[i][j]为true表示从i可以到达j, false则不能 ...
- 牛客网 2018校招真题 摩拜 排序次数
Description 牛客网 2018校招真题 排序次数 Solving Ideas 将数组a的元素拷贝到数组b 对数组b进行排序 对比数组b,统计数组a中已排序的元素个数 如:a = [2, 11 ...
- 牛客网 2018校招真题 滴滴出行 寻找丑数
Description 牛客网 2018校招真题 寻找丑数 Solving Ideas 参考<剑指offer>丑数 Time complexity : O(n)O(n)O(n) Space ...
- 牛客网 2018校招真题 爱奇艺 最后一位
Description 牛客网 2018校招真题 最后一位 Solving Ideas 二分查找 Solution import java.io.BufferedReader; import java ...
- 牛客网 2018校招真题 京东 回文
Description 牛客网 2018校招真题 回文 Solving Ideas 计算以str[str.length() - 1]为结尾的最大的回文长度,从而判断最少需要追加多少个字母才能使整个串成 ...
- 牛客网 2018校招真题 网易 骰子游戏
Description 牛客网 2018校招真题 骰子游戏 Solving Ideas 参考<剑指offer>n个骰子的点数 考虑用两个数组来存储骰子点数的每一个总数出现的次数. 在一次循 ...
- 牛客网 2018校招真题 招商银行信用卡 整数成绩最大化
Description 牛客网 2018校招真题 整数成绩最大化 Solving Ideas 当n>4时,最大受益为尽可能拆分出更多的数字3,最后一个不足3的,若其为1则分给其中一个3,得到4, ...
- 牛客网——2017校招真题在线编程(pythonC++)
牛客网--2017校招真题在线编程(python&C++) 1.n个数里的最小k个 题目描述 找出n个数里最小的k个 输入描述: 每个测试输入包含空格分割的n+1个整数,最后一个整数为k值,n ...
最新文章
- css改变背景透明度
- 如何限制用户的内存使用量
- 在windows下执行./configure,make,makeinstall源码安装程序spice-gtk
- Python多级菜单
- LeetCode每日一题:存在重复元素(No.217)
- selenium ruby和java_针对Ruby的Selenium WebDriver安装指南
- python中plt定义,对Python中plt的画图函数详解
- Bootstrap框架常用总结
- springsecurity登出的配置信息以及登出的认证效果
- BZOJ 4030: [HEOI2015]小L的白日梦
- Groovy(一)安装和基础环境配置
- itools苹果录屏大师_iTools Pro 1.8.0.4 简单易用的苹果设备 iPhone/iPad 管理工具
- 测试图片真假软件,如何找出照片的PS痕迹__如何检测一张图片是否被PS过_飞翔教程...
- Android8.0.0的BUG Only fullscreen opaque activities can request orientation
- 笔记本电脑桌面的计算机图标不见了,笔记本电脑桌面显示没了怎么办呢
- Tortoise 没有显示绿色图标
- 如何防范计算机安全,计算机安全风险及防范措施
- 从单一服务到多元化服务,智能机器人JIMI的架构改造及逐步开放的过程
- 简单分析多个京东快递物流中含有多次派送的单号
- python多进程多线程,多个程序同时运行