编程题
网络拥堵解决方案 ## 来源 University of Ulm Local Contest 1996 (ZOJ1088, POJ2244) ## 题目描述 你肯定经历过很多人同时使用网络、网络变得很慢很慢。为了彻底解决这个问题,Ulm大学决定采取突发事件处理方案:在网络负荷高峰期,将公平地、系统地切断某些城市的网络。德国的城市被标上1~n的序号。比如Freiburg城市的序号为1,Ulm城市的序号为2,等等。然后选择一个数m,首先切断第1个城市的网络,然后间隔m个序号,切断对应城市的网络,如果超出范围,则取模,并且忽略已经被切断网络的城市。例如,如果n=17,m=5,被切断网络的城市依次为:[1, 6, 11, 16, 5, 12, 2, 9, 17, 10, 4, 15, 14, 3, 8, 13, 7]。 对于给定的n值,求最小的m值,使得Ulm城市(2号)最后被选中切断网络。 ## 输入描述 输入文件包含多个测试数据。每个测试数据占一行,为一个整数n,3≤n<150,代表该国城市的个数。如果n的值为0,则表示输入结束。 ## 输出描述 对每个测试数据,输出求得的m值。 ## 样例输入 ```txt 8 9 0 ``` ## 样例输出 ```txt 11 2 ```
查看答案
赣ICP备20007335号-2