Cycle
Given a directed graph, your task is to determine whether there is a cycle with a negative weight. If such a cycle exists, you should output it.
Input
The first line of the input contains the integer n (1 ≤ n ≤ 250), representing the number of vertices in the graph. The following n lines each contain n integers, forming the adjacency matrix of the graph. The weights of the edges do not exceed 10000 in absolute value. If there is no edge between two vertices, the corresponding entry in the matrix is 1000000000.
Output
On the first line of the output, print YES if a negative weight cycle is found, or NO if none exists. If a cycle is found, print the number of vertices in the cycle (including the repeated vertex at the start and end) on the second line, and on the third line, list the vertices in the order they appear in the cycle.