Files
PAT/html/a1133.html
T

41 lines
1.8 KiB
HTML

<!DOCTYPE html>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<h1>1133. Splitting A Linked List (25)</h1>
<div id="problemContent">
<p>Given a singly linked list, you are supposed to rearrange its elements so that all the negative values appear before all of the non-negatives, and all the values in [0, K] appear before all those greater than K. The order of the elements inside each class must not be changed. For example, given the list being 18→7→-4→0→5→-6→10→11→-2 and K being 10, you must output -4→-6→-2→7→0→5→10→18→11.</p>
<p><b>
Input Specification:
</b></p>
<p>Each input file contains one test case. For each case, the first line contains the address of the first node, a positive N (&lt;= 10<sup>5</sup>) which is the total number of nodes, and a positive K (&lt;=1000). The address of a node is a 5-digit nonnegative integer, and NULL is represented by -1.</p>
<p>Then N lines follow, each describes a node in the format:</p>
<p><i>Address Data Next</i></p>
<p>where <i>Address</i> is the position of the node, <i>Data</i> is an integer in [-10<sup>5</sup>, 10<sup>5</sup>], and <i>Next</i> is the position of the next node. It is guaranteed that the list is not empty.</p>
<p><b>
Output Specification:
</b></p>
<p>For each case, output in order (from beginning to the end of the list) the resulting linked list. Each node occupies a line, and is printed in the same format as in the input.
</p>
<b>Sample Input:</b><pre>
00100 9 10
23333 10 27777
00000 0 99999
00100 18 12309
68237 -6 23333
33218 -4 00000
48652 -2 -1
99999 5 68237
27777 11 48652
12309 7 33218
</pre>
<b>Sample Output:</b><pre>
33218 -4 68237
68237 -6 48652
48652 -2 12309
12309 7 00000
00000 0 99999
99999 5 23333
23333 10 00100
00100 18 27777
27777 11 -1
</pre>
</div>