SzNOI c002 约瑟夫循环
来源:互联网 发布:数据特征提取方法 编辑:程序博客网 时间:2024/05/27 20:25
这题题目没怎么弄清,不知道循环旋转的时候从哪开始,也就不想了,写个简答的约瑟夫循环
#include<iostream>using namespace std ;struct LinkNode {LinkNode *link ;int data ;} ;//dingyi void CreatList (LinkNode *first,int number) {//LinkNode *first ;*first ;LinkNode *current = first ;//int number ;//int m1 ;//int m2 ;//cin >> number ;//cin >> m1 ;//cin >> m2 ;for(int i =1 ;i < number ;i++ ){//create current->data = i ;LinkNode *newNode =new LinkNode ;current->link = newNode ;current = newNode ;}current->data = number ;current->link = first ;}void print(LinkNode *first ) {//int i= 0;while (first != NULL) {cout << first ->data << endl; //i++;first = first->link ;}//cout <<i;}void Josephus (LinkNode *first,int number,int m1 ) {LinkNode *pre =NULL ;int i ;int j ;int arr[number] ;for(int k=1 ;k<=8;k++) {arr[k] =k ;}for(i=1 ;i<number ;i++) {for(j=1;j<m1;j++) {pre = first ;first = first->link ;}cout <<"the out number is " <<first->data <<endl;for(int g=1;g<=8 ;g++) {if(first->data == arr[g] ) {arr[g] =0 ;}} pre->link =first->link ;delete first ;first =pre ->link ;} //cout the answer ;for(int a =1 ;a<=8;a++ ) {if(arr[a] !=0) {cout << "the final is " ; cout <<arr[a] <<endl;break ;}} }int main () {LinkNode *first = new LinkNode ;//first->data = 100 ;//first->link = NULL ;int number ,m1 ,m2 ;cin >> number ;cin >> m1 ;CreatList (first , number ) ;Josephus (first ,number , m1) ;cout <<endl ;//cin >> m2 ;//return 0 ;}
0 0
- SzNOI c002 约瑟夫循环
- 苏州OJ c002: 双向约瑟夫
- SzNOI 双向约瑟夫(双向链表)
- 约瑟夫循环
- 约瑟夫循环
- 约瑟夫循环
- 约瑟夫循环问题uva305Joseph
- 循环列表|约瑟夫问题
- 约瑟夫循环链表
- 数组实现约瑟夫循环
- 约瑟夫循环报数问题
- C002-CPP-函数集合
- C002-CPP-Luhn公式
- 约瑟夫问题-循环链表
- 约瑟夫循环问题的解答
- 循环链表 约瑟夫环
- 循环队列 约瑟夫问题
- 约瑟夫问题(循环列示例)
- JDBC数据库访问、DAO理解
- 成功学是中国当代社会的毒瘤 《新周刊》
- HTML+CSS基础课程学习笔记-第一章HTML简介
- Makefile
- Android开发之旅:环境搭建
- SzNOI c002 约瑟夫循环
- 最大最小公倍数 (贪心)--未解决
- linux vi 编写C/java程序
- InputStream和OutputStream
- LeetCode: Container With Most Water [Java]
- Linux上的free命令详解
- 每天叫醒的不是闹钟而是励志文章梦想
- CentOS 7 默认语言修改
- Java中的反射与内省详解