El rey habla de programación
Si(s1==0) /*Si s1 es 0, significa que la última persona comienza a contar*/
s 1 =(s 1 m- 1) I; número S1; salido después de m; I. El número restante de personas que aún no han salido;
/* Se ha compilado VC 6.0. Lo sentimos, por motivos del sistema, actualmente no se admiten comentarios en chino.
El código está en inglés... Espero que puedas entenderlo.
*/
# incluir ltiostream gt
Usar espacio de nombres estándar
void Cal_Out_Sort(int S_start, int m, int total);
///////////////////principal()///////////////////// / ////////
void main()
{
int S_start, M, Total _ NO
cout lt lt"Ingrese un número para Total_NO:\n";
CIN gt; gtTotal_NO//¿Cuántos números tiene?
cout lt lt"Ingrese un número para M :\n";
CIN gt; gtm;//Cuál está saliendo
cout lt lt" Ingrese un número para S:\n";
CIN gt; S _ inicio//Número de inicio
Cal_Out_Sort(S_start, M, Total _ NO); /// ////////////Ordenar///////////////////////////////// p>
void Cal_Out_Sort(int S_start, int m, int total)
{
int * NO = new int[total] //Para el número 1 ~ total
int * Out = new int[total]; // Genera el número de clasificación
int S = S _ start-1
int Now _ Total; = total
for(int I = 0; i lt total; i )
NO[I]= I 1;
int Out _ Count = 0 ;
while(Out _ Count lt; Total - 1)
{
s = (s m) Now _ Total // s salida de posición; p>
Fuera[Out_count ]= NO[s];
for(int I = s;IltNow _Totali)
NO[I]= NO[I 1 ];
ahora_Total-;
s-;
}
Fuera[Out_Count]= NO[0];
p>
for(I = 0; i lt total; i )
cout lt ltout[I] ltendl
}