Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
Re:和你一样的思路,或许可以参考一下(用C++提交就对了,耗时600多秒,用C就会出现编译错误,晕)In Reply To:我的为什么超时啊!! help!!!!!!!!!!!!!!!!!!! Posted by:sun_huangjian at 2007-08-25 11:35:20 #include <stdio.h> int main() { int t, n, number; int i, k, temp; int integer[10000] = {0}; scanf("%d", &t); while(t--) { scanf("%d", &n); number = 0; for(i = 0; i < n; i++) { scanf("%d", &integer[i]); } for(i = 0; i < n-1; i++) { //选择出最小的数 if(integer[i] != i+1) { for(k = i+1; k < n; k++) { if(integer[k] == i+1) { temp = k; break; } } int temp_integer; temp_integer = integer[temp]; integer[temp] = integer[i]; integer[i] = temp_integer; number++; } } printf("%d\n", number); } return 0; } Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator