import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/**
 * @描述:
 * @思路:
 * @复杂度: 链表长度为N,要删除倒数第K个节点;最重要就是定位到它的前一个节点,即:第N-K个节点;
 * 过程分两步:
 * 1. 先从头到位遍历一遍遍历表,每遍历一个节点将K值减1, 将K值更新为K-N;
 * 2. 再遍历一遍链表,每遍历一个节点将K值加1,直到K值为0停止,这样就将K值更新为0-(K-N)= N-K,此时的节点便是第N-k个节点,即:要删除"倒数第k个节点"的前一个节点。
 * @链接:
 */
class RemoveLastKthNode {


    public static Node removeLastKthNode(Node head, int k) {
        Node cur = head;
        while (cur != null) {
            cur = cur.getNext();
            k--;
        }
        if(k > 0 ) { // 说明不存在倒数第k个节点
            System.out.println("说明不存在倒数第k个节点");
            return head;
        } else if(k == 0) { //说明头节点就是倒数第k个节点
            return head.getNext();
        } else {
            cur = head;
            while (++k != 0 ) {
                cur =  cur.getNext();
            }
            cur.setNext(cur.getNext().getNext());
            return head;
        }
    }

}


public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
        String[] s1 = input.readLine().split(" ");
        String[] s2 = input.readLine().split(" ");
        int n = Integer.parseInt(s1[0]);
        int k = Integer.parseInt(s1[1]);
        Node head = Node.createNodeList(s2);
        head = RemoveLastKthNode.removeLastKthNode(head, k);
        Node.printNodeList(head);
    }

}



class Node {

    private Node next;

    private int value;

    public Node(int value) {
        this.value = value;
    }

    public Node getNext() {
        return next;
    }

    public void setNext(Node next) {
        this.next = next;
    }

    public int getValue() {
        return value;
    }

    public void setValue(int value) {
        this.value = value;
    }


    public static Node createNodeList(Integer[] values) {
        Node head = new Node((values[0]));
        Node node = head;
        for (int i = 1; i < values.length; i++) {
            Node newNode = new Node(values[i]);
            node.next = newNode;
            node = newNode;
        }
        return head;
    }

    public static Node createNodeList(String[] values) {
        Node head = new Node(Integer.parseInt(values[0]));
        Node node = head;
        for (int i = 1; i < values.length; i++) {
            Node newNode = new Node(Integer.parseInt(values[i]));
            node.next = newNode;
            node = newNode;
        }
        return head;
    }



    public static void printNodeList(Node head) {
        StringBuilder sb = new StringBuilder();
        while (head != null) {
            sb.append(head.getValue()).append(" ");
            head = head.getNext();
        }
        System.out.println(sb.toString());
    }

}