/* Auteur: Nicolas JANEY          */
/* nicolas.janey@univ-fcomte.fr   */
/* Fevrier 2005                   */

public class JosephusFlavius2EnConsole {

  public static int eliminationJosephusFlavius(int n,int k) {
    int pos = 0;
    boolean [] mort = new boolean[n];
    mort[0] = true;
    Console.out.println("Mort de "+0);
    for ( int i = 1 ; i < n ; i++ )
      mort[i] = false;
    for ( int i = 0 ; i < n-1 ; i++ ) {
      int cpt = 0;
      do {
        pos = (pos+1)%n;
        if ( !mort[pos] )
          cpt++; }
      while ( cpt != k );
      Console.out.println("Mort de "+pos);
      mort[pos] = true; }
    return(pos);
  }

  /* Fonction principale                                  */

  public static void main(String [] args) {
    Console.setTitle("JosephusFlavius2");
  /* Lecture au clavier du nombre de soldats              */
    Console.out.print("Nombre de soldats : ");
    int n = Integer.valueOf(Console.in.readLine()).intValue();
  /* Lecture au clavier du nombre de soldats parcourus    */
  /* a chaque elimination                                 */
    Console.out.print("Taille des sauts  : ");
    int k = Integer.valueOf(Console.in.readLine()).intValue();
    Console.out.println("Le dernier soldat etait le numero "
                       +eliminationJosephusFlavius(n,k));
  }
}