[ABC268C] Chinese Restaurant
[ABC268C] Chinese Restaurant
声明:以上的所有操作都会再做一次\(%n+n)%n\),比如\(i - 1\)会变成\(((i-1)%n+n)%n\)
题意
有 \(n\) 个人和 \(n\) 个盘子,每个人如果能拿到 \(i - 1\) 或 \(i\) 或 \(i + 1\) 号盘子那么他会很开心,现在每个人的站位是 \(p_i\),他们的站位位置可以同时 $ + 1$,问最多可以有多少人觉得很开心。
思路
由于是一起动,所以可以用桶记录每个人走了多少步又到了那里,但是这样是 \(O(n^2)\) 的存不下也会超时。我们知道只有他在固定的盘子前才会觉得开心,所以有些桶是没用的,所以只要记录每个人到他想要去的盘子要多远就可以了,时间复杂度和空间复杂度为 \(O(n)\),在记录要走多远的时候,要注意细节。
代码
#include <iostream>
using namespace std;
const int MaxN = 2e5 + 10;
int cnt[MaxN], p[MaxN], n, ans;
int main() {
cin >> n;
for (int i = 0; i < n; i++) {
cin >> p[i];
cnt[n - ((p[i] - (i - 1 + n) % n) + n) % n]++, cnt[n - ((p[i] + n - i) + n) % n]++, cnt[n - ((p[i] + n - (i + 1) % n) + n) % n]++;
}
for (int i = 0; i < n; i++) {
ans = max(ans, cnt[i]);
}
cout << ans << endl;
return 0;
}
[ABC268C] Chinese Restaurant的更多相关文章
- URAL 1962 In Chinese Restaurant 数学
In Chinese Restaurant 题目连接: http://acm.hust.edu.cn/vjudge/contest/123332#problem/B Description When ...
- Distance dependent Chinese Restaurant Processes
Here is a note of Distance dependent Chinese Restaurant Processes 文章链接http://pan.baidu.com/s/1dEk7ZA ...
- 中国餐馆过程(Chinese restaurant process)
也就是说假设空桌子有a0个人,然后顾客选择桌子的概率和桌子上人数成正比. 性质: 改变用户的排列方式,桌子的排列方式,概率不变换.
- R Language
向量定义:x1 = c(1,2,3); x2 = c(1:100) 类型显示:mode(x1) 向量长度:length(x2) 向量元素显示:x1[c(1,2,3)] 多维向量:multi-dimen ...
- Notes on the Dirichlet Distribution and Dirichlet Process
Notes on the Dirichlet Distribution and Dirichlet Process In [3]: %matplotlib inline Note: I wrote ...
- Dirichlet Process 和 Dirichlet Process Mixture模型
Dirichlet Process 和 Dirichlet Process Mixture模型 [本文链接:http://www.cnblogs.com/breezedeus/archive/2012 ...
- Diet
Dialogue 1 Healthy diet 关于健康饮食 F:Bob, look at this sentence. 'Healthy eating is not about strict n ...
- 《Dynamic Topic Detection and Tracking: A Comparison of HDP, C-Word, and Cocitation Methods》笔记
原文地址:http://onlinelibrary.wiley.com/doi/10.1002/asi.23134/abstract 黄色背景是我认为比较重要的,红色字体是我自己的话. 动态主题监测与 ...
- [Bayesian] “我是bayesian我怕谁”系列 - Naive Bayes+prior
先明确一些潜规则: 机器学习是个collection or set of models,一切实践性强的模型都会被归纳到这个领域,没有严格的定义,’有用‘可能就是唯一的共性. 机器学习大概分为三个领域: ...
- [IR] Concept Search and LDA
重要的是通过实践更深入地了解贝叶斯思想,先浅浅地了解下LDA. From: http://blog.csdn.net/huagong_adu/article/details/7937616/ 传统方法 ...
随机推荐
- Java执行带空格的语句命令,cmd无法识别带空格路径的问题
带空格的会识别不了 先说解决方法: 1:用cmd中的start: 在JAVA中可以如此使用: Runtime.getRuntime().exec("cmd /c start \"\ ...
- 最近写了一个demo,想看看java和go语言是怎么写的
最近写了一个demo:demo的github地址 一. 简单介绍 1. Server端 它是一个WebApi服务,把它当成一个黑盒就行了. 2. MiddleServer端 是重点,它是一个WebAp ...
- Goravel ORM 新增模型关联,用 Golang 写关联也可以跟 Laravel 一样简单
关于 Goravel Goravel 是一个功能完备.具有良好扩展能力的 Web 应用程序框架.作为一个起始脚手架帮助 Golang 开发者快速构建自己的应用.框架风格与 Laravel 保持一致,让 ...
- vite项目生产环境去掉console信息【转载】
环境变量引入 通常去掉console为生产环境,即需要引入环境变量.具体请看这篇文章: vite项目初始化之~环境变量 注意 与webpacak相比,vite已经将这个功能内置到了,所以我们只需要配置 ...
- springboot邮箱验证功能部署到服务器后报25 timeout的解决方式
可以写在application.yml中或者 写在配置类中, 如下; 原理就是更改端口,并且配置ssl的相关配置 package com.wfszmg.config; import org.sprin ...
- C#中的数据字典Dictionary
前言 今天上午和往常一样在网上冲浪,看到码甲哥微信群里面在聊一个面试题,比较有意思,这里简单分享下结论中的Dictionary字典. 有50w个int类型的数字,现在需要判断一下里面是否存在重复的数字 ...
- 6步带你用Spring Boot开发出商城高并发秒杀系统
摘要:本博客将介绍如何使用 Spring Boot 实现一个简单的商城秒杀系统,并通过使用 Redis 和 MySQL 来增强其性能和可靠性. 本文分享自华为云社区<Spring Boot实现商 ...
- python之PySimpleGUI(一)元素
1themesg.theme_previewer()获取所有主题颜色sg.preview_all_look_and_feel_themes()同上theme_name_list = sg.theme_ ...
- [Web服务容器/Apache Tomcat]WINDOWS系统下:一台机器部署多个[解压版]Tomcat
以windows为例. 1 思路 1.1 前置条件 已成功配置JDK (JAVA_HOME / Path) 控制面板>所有控制面板项>系统>高级系统设置>系统变量(S): JA ...
- 【转载】使用IntelliJ IDEA 14和Maven创建java web项目
安装Maven 下载安装 去maven官网下载最新版(传送门 密码: gfi1) 解压到安装目录. 配置 右键桌面的计算机图标,属性–>高级系统设置–>环境变量,添加M2_HOME的环境 ...