题意:现在有一排房间每个房间里有若干的人,现在会将某个房间i里的人重新分配,分配的方法是首先让i房间里的人都出来,之后按照i+1,i+2....的顺序每个房间分一个人,n号房间的下一个房间为1号房间,这样分配下去直到i房间里的所有人都重新分配。

现在给你最后房间的人数状态和最后一个人被分配到的房间号,要求你输出原来每个房间里有多少人

思路:真的是太久没做过题了完全懵逼。。。。。。。

最笨的方法是模拟,从最后那个人被分配到房间开始往前每个房间人数减一倒推状态,直到减到某个房间人数为0没法减了那么这个房间就是被重新分配的房间。当然模拟肯定会超时。

首先我们的目的是找回最初的状态,那么任务就是要找出被重新分配的房间是哪一间。

那么一分析就会发现被重新分配的房间必然是人数最少的

【因为首先重新分配前会把房间人数清零,且按照他的方法重新分配房间i是每轮最后分到人的所以分配到的人数也必然不会比其他房间多】

但是会存在有多个房间的人数都为最少的,这时候怎么确认哪间才是被重新分配的?

这时候考虑模拟的方法就会得到结论:离最后那个人被分配的房间左边最近的那间房间就是被分配的房间

这样我们就可以大幅减少模拟

首先找出被重新分配的房间的号码和人数【这个人数就为一共循环分配了几轮】

之后把所有的房间人数-循环分配的轮数,然后从最后一个人被分配的房间向左模拟最后一轮没够所有房间的分配情况

被分配房间原本的人数就为 分配后房i的人数*房间总数+离最后被分配人的房间左侧的距离

代码等明早起来再写了

15号就机试了我也要加把劲骑士

字节跳动2018校招前端方向(第三批)题目3相关推荐

  1. 字节跳动2018校招算法方向(第一批) —— 1-最外层点

    时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M P为给定的二维平面整数点集.定义 P 中某点x,如果x满足 P 中任意点都不在 x 的右上方区域内(横纵坐标都大 ...

  2. 字节跳动2018校招前端面试题

    import java.util.*;public class Main {public static void main(String[] args){//连通的格子数目不能超过4Scanner s ...

  3. 今日头条2018校招后端方向(第二批)

    1.为了不断优化推荐效果,今日头条每天要存储和处理海量数据.假设有这样一种场景:我们对用户按照它们的注册时间先后来标号,对于一类文章,每个用户都有不同的喜好值,我们会想知道某一段时间内注册的用户(标号 ...

  4. 题解-今日头条2018校招后端方向(第二批)

    原题链接 链接:https://www.nowcoder.net/questionTerminal/429c2c5a984540d5ab7b6fa6f0aaa8b5 作为一个手串艺人,有金主向你订购了 ...

  5. 今日头条2018校招后端方向(第二批)编程题2,串珠问题。java代码。

    作为一个手串艺人,有金主向你订购了一条包含n个杂色串珠的手串--每个串珠要么无色,要么涂了若干种颜色.为了使手串的色彩看起来不那么单调,金主要求,手串上的任意一种颜色(不包含无色),在任意连续的m个串 ...

  6. 【前端面试】字节跳动2019校招面经 - 前端开发岗(二)

    [前端面试]字节跳动2019校招面经 - 前端开发岗(二) 因为之前的一篇篇幅有限,太长了看着也不舒服,所以还是另起一篇吧? 一. jQuery和Vue的区别 jQuery 轻量级Javascript ...

  7. 字节跳动2022校招研发提前批宣讲会,同学们最关心的10个问题

    字节跳动 2022 校招研发提前批 7 场宣讲会,已经全部结束啦,不知道你是否已经充分了解了字节跳动,选好了想去的岗位和团队呢? 如果你真的真的真的没有时间,错过了宣讲会的话,不要担心,我们整理了宣讲 ...

  8. 字节跳动暑期实习前端面试

    字节跳动暑期实习前端面试 现在轮到我这个23届开始真正地找实习了,但是今年的校招情况非常非常差,这个在今年的实习总结再详细说吧.这次投递字节也是非常的有意思,本来我是投递的字节抖音互动部门,然后刚投了 ...

  9. 哔哩哔哩2018校招前端笔试

    前言 前几日,哔哩哔哩在电子科大清水河校区举行了校招宣讲会.B站不用多说,中国最大的同性交友网站,不去工作也能去看看. 当晚便进行了部分笔试,下面是我参加的前端笔试试题和我自己的解答,分享给大家. 博 ...

最新文章

  1. 毕马威发布《人工智能无处不在》研究报告:人工智能在五大行业的成就与挑战...
  2. 详解数据挖掘与机器学习的区别与联系
  3. LVS负载均衡群集部署之——NAT模式的介绍及搭建步骤
  4. mybatis There is no getter for property named 'xx' in 'class java.lang.String
  5. android 线程安全
  6. 【数据库原理实验(openGauss)】 安全性控制
  7. 拓端tecdat|R语言用ARIMA模型预测巧克力的兴趣趋势时间序列
  8. EmmyLua For Intellij IDEA注解功能的一些用法
  9. alios thing - rhino内核 - 内存管理
  10. creo三维生成二维图_proe5.0三维图转二维图
  11. 吃热狗游戏Java_《我的世界》吃才是王道“食物工艺”让你尝遍八大菜系
  12. 计算56除以四十可以用计算机,CPU如何来计算除法 一
  13. TS进阶之keyof
  14. 国内固定电话和传真的正则表达式
  15. 树莓派移动硬盘存储服务器,树莓派+移动硬盘搭建NAS服务器
  16. 摩根斯丹利 上海java开发_美团上海Java实习(已offer)面经(还没写完,转载)...
  17. 测绘用计算机吗,测绘工程中计算机制图应用
  18. 用HTML写一个消消乐代码
  19. silverlight visifire 图表辅助类
  20. 投票页面制作线上投票活动制作网络投票制作关注投票制作

热门文章

  1. Internet Explorer 编程简述(序)
  2. 由标明空子树的先序遍历序列创建二叉树
  3. Ubuntu 18.04 U盘启动安装教程【图文教程,非常详细!!!!】
  4. TensorFlow练手项目二:基于循环神经网络(RNN)的古诗生成器
  5. 机械秒表的使用方法_浪琴 L683、L688自动上弦机械计时秒表设置方法
  6. MusicPlayerByService
  7. JAVA中的flush()方法
  8. 2022年12月编程语言排行榜公布!
  9. 埃默里大学(Emory University)计算机系招收NLP方向博士生啦~
  10. Python爬虫:头条小姐姐们都来给你拜年啦!