【基础练习】【模拟】Uva133 - The Dole Queue题解
2015-01-31 09:02
676 查看
有点点像约瑟夫的变式 注意函数形参要用逗号隔开
这个题目中ruka提供的处理环的方法很有用 可以学习一下
再一个就是出圈后相应位置赋值为零很方便
代码放上:
第一遍竟然WA了 还以为怎么回事 仔细一看才发现是格式写错了 如果两个人数的不同 中间不用加逗号
上述代码已修改
信息组,久违了。
——唱彻《阳关》泪未干,功名馀事且加餐。
这个题目中ruka提供的处理环的方法很有用 可以学习一下
再一个就是出圈后相应位置赋值为零很方便
代码放上:
#include<cstdio> using namespace std; int n,k,m,a[22]; int go(int now,int plus,int num){ while (num--){ do{now=(now+plus+n-1)%n+1; } while (a[now]==0); } return now; } int main(){ while (scanf("%d%d%d",&n,&k,&m)==3 && n){/*n is total,k id n and m is b*/ for (int i=1;i<=n;i++) a[i]=i; int left=n; int p1=n,p2=1; while (left){ p1=go(p1,1,k); p2=go(p2,-1,m); printf("%3d",a[p1]); left--; if (a[p1]!=a[p2]) { printf("%3d",a[p2]); left--; } a[p1]=a[p2]=0; if (left) printf(","); } printf("\n"); } return 0; }
第一遍竟然WA了 还以为怎么回事 仔细一看才发现是格式写错了 如果两个人数的不同 中间不用加逗号
上述代码已修改
信息组,久违了。
——唱彻《阳关》泪未干,功名馀事且加餐。
相关文章推荐
- 【基础练习】【模拟map练习】Uva156 - Ananagrams题解
- 【基础练习】【模拟】Uva489 - Hangman Judge题解
- 会计基础模拟练习2
- uva 133 The Dole Queue 双向约瑟夫环 模拟实现
- 【基础练习】【数论/模拟】codevs1670 无穷的序列题解
- Java基础知识强化之IO流笔记53:IO流练习之 自定义类模拟BufferedReader的readLine()功能案例
- UVa 133 - The Dole Queue【模拟】
- Uva 133 - The Dole Queue//模拟,链表
- 蓝桥杯基础练习 阶乘计算(简单模拟)
- UVA - 11995 - I Can Guess the Data Structure! (基础数据结构练习!)
- 【基础练习】【字符串】【模拟】洛谷2614 计算器弹琴题解
- 模拟港澳通行证办理流程系统(队列基础练习)
- 【模拟】【环形数组】-UVA-133- The Dole Queue
- 会计基础模拟练习一(3)
- uva 133(模拟)
- uva 673 Parentheses Balance 习题6-1 (栈——基础练习)
- uva 133 The Dole Queue 双向约瑟夫环 模拟实现
- 会计基础模拟练习一(2)
- uva133 The Dole Queue ( 约瑟夫环的模拟)
- 【基础练习】【模拟】codevs1053 笨小猴题解