题解 1047: [编程入门]报数问题

来看看其他人写的题解吧!要先自己动手做才会有提高哦! 
返回题目 | 我来写题解

筛选

[编程入门]报数问题-题解(C++代码)不用复杂的数据结构解

解题思路://本题模拟每个人相当于一个数组元素,其编号=元素值,元素值为0,则被踢出,元素值不为0,则计数,计数到3时,踢出该人,该元素值置为0,当踢出n-1个人时,还剩下一个人,即一个不为0的元素,其元素值就是剩下那人的编号注意事项:参考代码:#includeusingnames

[编程入门]报数问题-题解(C++代码)

题解1047这道题看起来有点烦,其实非常简单,函数可以一行代码搞定。先上代码:#includeusingnamespacestd;intfunction(intn){returnn==1?n:(function(n-1)+3-1)%n+1;}intmain(){intn;cin>>n;coutn;co

[编程入门]报数问题-题解(C++代码)

思路主要是利用循环链表和for循环,可能较为繁琐1.构建循环链表Node*setList(intn){Node*head=(Node*)malloc(sizeof(Node));Node*p=(Node*)malloc(sizeof(Node));head->data=1;if(n>1){head->

[编程入门]报数问题 (C++代码)(STL,list)

利用STL的list,不需要巧妙的算法,直接翻译题意即可。补充一点,list本身就是循环链表实现,迭代器在end()时再加一即到了begin(),不过我没用该特性,自己控制迭代器循环的。```cpp#include#includeusingnamespacestd;intmain(){listpers

[编程入门]报数问题-题解(不需要链路)(C++代码)

对于作者这种小白来说,链路还是比较难理解的,所以作者这里采用了非链路的方法,拓宽思维。原题链接:https://www.dotcpp.com/oj/problem1047.html根据题意我们可以把数组a确定为要排序的数组;把数组b确定为测试数组,用于测试a对应下标的数是否为3。