LeetCode_周赛_330
6337. 统计桌面上的不同数字

代码
后面出现的数字都是小于 n 的。
n = 1 时,答案是 1。
n > 1时:
- 第一天,n % (n - 1) == 1,n - 1会被加入
- 第二天,(n - 1) % (n - 2) == 1,n - 2 被加入
递推,一直到 2 的时候,不会加入 1,因为任何数 mod 1 都是 0,且共 1e9 天来加入数字,远大于 100,一定可以把该加入的都加入,所以共有 (n - 1) 个数字
注意特判 n 为 1 的情况
class Solution {
public int distinctIntegers(int n) {
if (n == 1) return 1;
return n - 1;
}
}
6338. 猴子碰撞的方法数

代码
每个猴子都有两种移动的方向,那么总的情况数就是 2^n
求发生碰撞的数量,太多了,我们反过来求,求碰撞的数量
正难则反
查看案例,发现不发生碰撞的情况只有两种:同时顺时针 / 逆时针
所以题目转化为了求 pow(2, n) - 2 % MOD 的形式
直接采用快速幂即可,但是因为快速幂之后要 减二,会产生负数,所以我们 减2 之后加上 mod,再进行取模
(quick_power(2, n, MOD) - 2 + MOD) % MOD
题目有些歧义,说的是 移动后 位于同一顶点才算碰撞,但是样例给定的是移动中碰撞也算了。
例如当 n = 4 时上面两个左右交换,下面两个左右交换,也不冲突,但是样例没有算。
class Solution {
public int monkeyMove(int n) {
int MOD = 1000000007;
return (quick_power(2L, n, MOD) - 2 + MOD) % MOD;
}
private static int quick_power(long a, long b, long p) {
long ans = 1;
while (b > 0) {
if ((b & 1) == 1) ans = ans * a % p;
a = a * a % p;
b >>= 1;
}
return (int) ans;
}
}
6339. 将珠子放入背包中

代码
一眼 dp,再看数据量,太大了,二维dp会超时,换方法
题目:
将序列分成 k 段,===》 切 k - 1 次,有 k - 1 个分割点,求分割点左右元素之和
求出来所有的相邻元素和,排序,求最大的 k - 1个 和 最小的 k - 1个之差即可
特殊情况::子数组中,只有最左边的一个 / 最右边的一个
但是因为所有情况都要选择这两个值,而且求的是差值,就抵消了、
所以我们只看里面的元素即可
class Solution {
public long putMarbles(int[] w, int k) {
int[] s = new int[w.length - 1];
for (int i = 0; i + 1 < w.length; i++)
s[i] = w[i] + w[i + 1];
Arrays.sort(s);
long a = 0, b = 0;
for (int i = 0; i < k - 1; i++) {
a += s[i];
b += s[s.length - i - 1];
}
return Math.abs(a - b);
}
}
LeetCode_周赛_330的更多相关文章
- 周赛-KIDx's Pagination 分类: 比赛 2015-08-02 08:23 7人阅读 评论(0) 收藏
KIDx's Pagination Time Limit: 2000/1000MS (Java/Others) Memory Limit: 128000/64000KB (Java/Others) S ...
- 2015浙江财经大学ACM有奖周赛(一) 题解报告
2015浙江财经大学ACM有奖周赛(一) 题解报告 命题:丽丽&&黑鸡 这是命题者原话. 题目涉及的知识面比较广泛,有深度优先搜索.广度优先搜索.数学题.几何题.贪心算法.枚举.二进制 ...
- Leetcode 第133场周赛解题报告
今天参加了leetcode的周赛,算法比赛,要求速度比较快.有思路就立马启动,不会纠结是否有更好的方法或代码可读性.只要在算法复杂度数量级内,基本上是怎么实现快速就怎么来了. 比赛时先看的第二题,一看 ...
- 牛客OI周赛9-提高组题目记录
牛客OI周赛9-提高组题目记录 昨天晚上做了这一套比赛,觉得题目质量挺高,而且有一些非常有趣而且非常清奇的脑回路在里边,于是记录在此. T1: 扫雷 题目链接 设 \(f_i\) 表示扫到第 \(i\ ...
- codeforces 14A - Letter & codeforces 859B - Lazy Security Guard - [周赛水题]
就像title说的,是昨天(2017/9/17)周赛的两道水题…… 题目链接:http://codeforces.com/problemset/problem/14/A time limit per ...
- 牛客OI周赛8-提高组A-用水填坑
牛客OI周赛8-提高组A-用水填坑 题目 链接: https://ac.nowcoder.com/acm/contest/403/A 来源:牛客网 时间限制:C/C++ 2秒,其他语言4秒 空间限制: ...
- 计蒜客 28449.算个欧拉函数给大家助助兴-大数的因子个数 (HDU5649.DZY Loves Sorting) ( ACM训练联盟周赛 G)
ACM训练联盟周赛 这一场有几个数据结构的题,但是自己太菜,不会树套树,带插入的区间第K小-替罪羊套函数式线段树, 先立个flag,BZOJ3065: 带插入区间K小值 计蒜客 Zeratul与Xor ...
- 周赛Problem 1108: 蛋糕(二分)
1108: 蛋糕 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 17 Solved: 4 Description 杨神打代码打得有点疲倦,于是他想要 ...
- CSDN 轻松周赛赛题:能否被8整除
轻松周赛赛题:能否被8整除 题目详情 给定一个非负整数,问能否重排它的全部数字,使得重排后的数能被8整除. 输入格式: 多组数据,每组数据是一个非负整数.非负整数的位数不超过10000位. 输出格式 ...
- 计蒜客 ACM训练联盟周赛 第一场 Christina式方格取数 思维
助手Christina发明了一种方格取数的新玩法:在n*m的方格棋盘里,每个格子里写一个数.两个人轮流给格子染色,直到所有格子都染了色.在所有格子染色完后,计算双方的分数.对于任意两个相邻(即有公共边 ...
随机推荐
- php自定义分页类
<?php class Paging { private $totalStrip; //总条数 private $pageStrip; //每页条数 private $totalPages; / ...
- Java新特性(2):Java 10以后
您好,我是湘王,这是我的博客园,欢迎您来,欢迎您再来- 虽然到目前为止Java的版本更新还没有什么惊天动地的改变,但总是会冒出一些有趣的小玩意.前面列举了Java9和Java10的一些特色,现在接着来 ...
- layui文件上传
//前端代码 <div class="layui-form-item"> <label class="layui-form-label"> ...
- 对Java Web中WEB-INF目录的理解以及访问方法
事情发生 在上个暑假第一次写Java web大项目的时候,对于目录管理及分配没有任何经验,就想着清晰明了. 后端servlet是用maven进行构建的,所以在目录上没有碰到什么大问题. 用idea进行 ...
- day10 集合——队列(Queue)、Vector & Map集合常用方法 & HashMap的实现原理&二叉树&二叉查找树AVL树&红黑树
集合--List 栈先进后出 队列 先进先出 Queue队列 方法 Queue<Integer> q = new LinkedList<>(); //添加元素 q.add(2) ...
- 【极客时间】大数据概述及HDFS介绍
- 【Linux】个人笔记本安装Centos并开放22端口供外网连接
〇.参考资料 一.配置及安装内容 (一)配置 [today]低配笔记本(装centos):4+500G 个人电脑(装三个节点的虚拟机集群环境):8+628G (二)所装软件 Linux系统(可选cen ...
- 痞子衡嵌入式:存储器大厂Micron的NOR Flash芯片特殊丝印设计(FBGA代码)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家讲的是存储器大厂Micron的NOR Flash芯片特殊丝印设计(FBGA代码). 痞子衡之前写过一篇文章 <J-Flash在Micron ...
- (数据科学学习手札147)Python GIS利器shapely全新2.0版本一览
本文示例代码已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 大家好我是费老师,我写过很多篇介绍geopand ...
- JavaScript:函数:函数的参数
声明函数的时候,有个括号,这里面可以加上函数的参数,这些参数,我们叫做形参(形式参数): 此时这些参数,也是已经声明了的变量,只是还没有赋值而已. 也可以不加,取决于函数的逻辑.如果函数需要从外部传进 ...