냉장고 산만하게 하기
시간 제한1초메모리 제한1024 MB
케빈이 냉장고에서 물건을 꺼낼 때마다 앞에 있는 물건 수만큼 시간이 걸린다고 할 때, 총 시간이 정확히 t초가 되도록 가장 적은 횟수로 꺼낼 물건 순서를 찾는다.
문제
Kevin은 냉장고를 아주 잘 정리한다. 모든 물건을 긴 선반 하나에 놓는데, 지금은 모든 물건이 앞에서부터 "a", 뒤쪽으로 "z" 순서로 사전순으로 정리되어 있다.
Kevin이 냉장고에서 어떤 물건을 꺼내고 싶으면, 그 물건보다 앞에 있는 물건을 전부 밖으로 빼내고, 원하는 물건을 꺼낸 뒤, 나머지 물건을 원래 순서대로 다시 넣고, 마지막으로 사용한 물건을 맨 앞에 놓는다. 이 과정에는 냉장고에서 꺼낸 물건의 총 개수만큼의 초가 걸린다.
당신은 Kevin을 위해 깜짝 생일 파티를 준비하고 있고, 당신과 친구들은 그에게 평범한 냉장고를 선물하려 한다. 정확히 원하는 만큼의 시간 동안 Kevin을 붙잡아 두어야 하며, 그 방법은 그에게 냉장고에서 물건을 꺼내 달라고 반복해서 요청하는 것이다.
낭비해야 하는 시간이 초 단위로 주어질 때, Kevin이 정확히 그만큼의 시간을 쓰도록, 가능한 한 적은 물건을 꺼내 달라고 요청하는 순서를 제시하시오.
입력
입력은 다음과 같다.
- 한 줄에 ()과 ()가 주어진다. 은 냉장고에 있는 물건의 수이고, 는 낭비해야 하는 시간(초)이다.
출력
Kevin에게 냉장고에서 꺼내 달라고 요청해야 하는 물건의 최소 개수를 출력한다.
다음 줄에 Kevin에게 꺼내 달라고 요청할 모든 물건의 문자를 순서대로 출력한다.
가능한 답이 여러 개라면 아무 것이나 출력해도 된다.