somdaa / algorithmstudy

0 stars 0 forks source link

week-01. Linkedlist-card1 problem #1

Open somdaa opened 6 years ago

somdaa commented 6 years ago

https://www.acmicpc.net/problem/2161

levi-yo commented 6 years ago

import java.util.LinkedList; import java.util.Scanner;

public class Card1 {

public static void main(String[] args) {
    // TODO Auto-generated method stub
    Scanner s=new Scanner(System.in);
    int n=s.nextInt();
    LinkedList<Object> list= new LinkedList<Object>();
    StringBuffer sb=new StringBuffer();
    for(int i=n;i>0;i--){
        list.addFirst(i);
    }
    while(list.size()!=1){
        sb.append(list.removeFirst()+" ");
        Object result=list.removeFirst();
        list.addLast(result);
    }
    sb.append(list.removeFirst());
    System.out.println(sb.toString());
}

}

ewqsaz123 commented 6 years ago

import java.util.LinkedList; import java.util.Scanner;

public class Solution_2161 { public static void main(String[] args) { LinkedList list = new LinkedList<>();

    Scanner sc = new Scanner(System.in);

    int n =sc.nextInt();//n입력

    for(int i=1; i<=n;i++) {
        list.add(i); //1~n 노드 연결리스트에 추가
    }

    while(list.size() > 1) {    //노드 한 개만 남을 때까지 while문 반복, n이 1일 때 while문 안들어감
        System.out.print(list.removeFirst()+" ");   //맨 위의 카드 삭제 & 출력
        list.addLast(list.removeFirst());   //head를 빼서 tail에 연결
    }

    System.out.print(list.getFirst());  //마지막 노드 출력

}

}