給定一系列正整數,請設計一個盡可能高效的算法,查找倒數第K個位置上的數字。
輸入首先給出一個正整數K,隨后是若干正整數,最后以一個負整數表示結尾(該負數不算在序列內,不要處理)。
輸出倒數第K個位置上的數據。如果這個位置不存在,輸出錯誤信息NULL。
4 1 2 3 4 5 6 7 8 9 0 -1輸出樣例:
7
#include<stdio.h>#define max 1000005int main(){ int n; int k; int i=0; int a[max]; scanf("%d",&k); while(1){ scanf("%d",&a[i]); if(a[i]<0) break; i++; } if(i-k>=0) PRintf("%d",a[i-k]); else printf("NULL"); return 0;}注意數組開的大小
新聞熱點
疑難解答