uva133-S.B.S.】的更多相关文章

#include<stdio.h> #define maxn 20 ], n; int go( int p,int d,int t ) {// printf("a[%d]=%d\n",p,a[p]); while( t-- ) { //该题的核心所在 do{ p = (p+d+n-) % n +; } ); } return p; } int main() { int k, m, p1, p2; ) { ; i<=n; i++ ) a[i] = i;//位置初始化 p…
题目链接:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=69 13874119 133 The Dole Queue Accepted C++ 0.009 2014-07-13 02:44:49  The Dole Queue  In a serious attempt to downsize (reduce) the dole queue…
题目链接: 啊哈哈,选我选我 思路是: 相当于模拟约瑟夫环,仅仅只是是从顺逆时针同一时候进行的,然后就是顺逆时针走能够编写一个函数,仅仅只是是走的方向的标志变量相反..还有就是为了(pos+flag+n-1)%n+1的妙用... 题目:  The Dole Queue  In a serious attempt to downsize (reduce) the dole queue, The New National Green Labour Rhinoceros Party has decid…
题意:约瑟夫问题,从两头双向删人.N个人逆时针1~N,从1开始逆时针每数k个人出列,同时从n开始顺时针每数m个人出列.若数到同一个人,则只有一个人出列.输出每次出列的人,用逗号可开每次的数据. 题解:模拟. 技巧:将顺时针逆时针的模拟合并为同一个函数. p1 = go(p1, 1, k);p2 = go(p2, -1, m); 循环处理: do p = (p + d + n - 1) % n + 1; while (a[p] == 0); (int p1 = n, p2 = 1;) 别忘了 a[…
减少领取救济金排队的长度是一个严重的问题,The New National Green Labour RhinocerosParty (这个党派)依据如下规则.每天来领取救济金的人排成一个大圆环.任选一人标识为1,其他的人按照逆时针顺序开始标识,一直到N(第N个人在第一个人的左边).一个官员逆时针从编号为1的人开始数,数K人后结束,另外一个官员从N开始,顺时针开始,数m人结束.俩个被选中的人从圆环里拿出来.如果俩个官员选中的是同一个人,那么这个人送去从政,每个官员然后从下一个可用的人开始,继续数…
题目具体描述见:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=69 C++11代码如下: #include<iostream> #include<iomanip> using namespace std; ]; int n, k, m; int go(int p, int d, int t) { //d表示步长,值…
题意: n个人围成个圆,从1到n,一个人从1数到k就让第k个人离场,了另一个人从n开始数,数到m就让第m个人下去,直到剩下最后一个人,并依次输出离场人的序号. 水题,直接上标程了 #include<stdio.h> #define maxn 25 int n, k, m, a[maxn]; // 逆时针走t步,步长是d(-1表示顺时针走),返回新位置 int go(int p, int d, int t) { while(t--) { do { p = (p+d+n-1) % n + 1; }…
一:题目 (n< )个人站成一圈,逆时针编号为1~n.有两个官员,A从1开始逆时针数,B从n开始顺时针数.在每一轮中,官员A数k个就停下来,官员B数m个就停下来(注意有可能两个官员停在同一个人上).接下来被选中的人离开队伍. 输入n,k,m输出每轮被选中的人的编号(如果有两个人,先输出A的)每个输出数字正好占3列. 二:实现思路 A从数组首部向后遍历(若是该位置还有人,则步数加一,否则不改变步数),当遍历到最后,则转回首部继续遍历. B从数组尾部向前遍历(...),若是遍历到首部,则转回尾部继续…
为了缩短领救济品的队伍,NNGLRP决定了以下策略:每天所有来申请救济品的人会被放在一个大圆圈,面朝里面.标明一个人为编号1号,其他的就从那个人开始逆时针开始编号直到N.一个官员一开始逆时针数,数k个申请者,然后另一个官员第N个始顺时针方向数m个申请者,这两个人就被送去再教育.如果两个官员数的是同一个人,那个人则被送去从政,然后2个官员再在剩下的人里面继续选直到没人剩下来,注意两个被选中的人是同时走掉的,所以就有可能两个官员选中一个人. [输入] 输入含有多组测试数据,每组测试数据一列含有三个数…
The Dole Queue  In a serious attempt to downsize (reduce) the dole queue, The New National Green Labour Rhinoceros Party has decided on the following strategy. Every day all dole applicants will be placed in a large circle, facing inwards. Someone is…
UVA127 链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=63 一道非常好的栈的模拟题,训练计划又往后推了一周,因为各种事情,不过自己已经做了修改,另外说一下,今晚寝室那两尊神不在,难得的心情好, 这题其实还是看了别人的代码的,大牛博客:http://blog.csdn.net/hyczms/article/details/380…
uva202: https://blog.csdn.net/lecholin/article/details/70163148 uva1589: https://blog.csdn.net/qq_42191950/article/details/80945685 https://www.jianshu.com/p/a44d0662a070 uva1339: https://blog.csdn.net/karry_zzj/article/details/72763986 uva489: https…
(另:关于"引用"更具体的讨论.见此.) 由做UVa133引发的一系列问题及讨论 1.引用类型    C++ Primer P51 引用就是对象的还有一个名字,使用多个变量名指向同一地址. 实际程序中.引用主要用作函数形參. 复合类型.不能定义引用类型的引用,但能够定义不论什么其它类型的引用. 格式: 类型名&  标示符=已声明的常变量; 2.引用形參    C++ Primer P201-205 非引用形參有普通的.指针形參.const形參(可传const对象或非const对…