level 5
琪の悠朵
楼主
问题描述
现有n个正整数,n≤10000,要求出这n个正整数中的第k个最小整数(相同大小的整数只计算一次),k≤4000,正整数均小于30000。
输入文件
第一行为n和k;
第二行开始为n个正整数的值,整数间用空格隔开。
输出文件
第k个最小整数的值;若无解,则输出“NO RESULT”。
输入样例
10 3
1 3 3 7 2 5 1 2 4 6
输出样例
3
答案:OPEN "knumber.in" FOR INPUT AS #1
OPEN "knumber.out" FOR OUTPUT AS #2
INPUT #1,n, k
DIM a(n)
FOR i = 1 TO n
INPUT #1,a(i)
NEXT i
FOR i = 1 TO n - 1
FOR j = i + 1 TO n
IF a(i) = a(j) THEN n = n - 1: FOR u = j TO n - 1: a(u) = a(u + 1): NEXT u
IF a(i) > -1 AND a(j) > -1 THEN
IF a(i) > a(j) THEN SWAP a(i), a(j)
END IF
NEXT j
NEXT i
IF k <= n THEN PRINT a(k) ELSE PRINT #2,"NO RESULT"
CLOSE
END