超級傳送門:
由於n<=3000,它們和的組合n*(n-1)/2是乙個比較大的數,直接暴力求解必然tle。不過題目中說了:每個數不超過5000,而且都是正整數,所以可以用hash來嘗試一下。
#includeint main () ;
while (scanf("%d%d",&n,&m) != eof) else printf(" ");
printf("%d",i);
}m -= hash[i];
} else else printf(" ");
printf("%d",i);
}m = 0;
printf("\n");
break;}}
}}
return 0;
}
時間是0ms,hash還是很給力的。
hdoj 1280 前m大的數!
思路 這題和矩陣轉置有一點聯絡,它們兩兩相加得到的 n n 1 2 個和,其實就是矩陣的上三角或下三角,這一點解決了,再來個qsort就搞定啦!還有注意陣列的大小!我在這栽跟頭了 inta 3005 c 5000000 注意陣列的大小!intmain qsort c,k,sizeof int com...
hdoj 1280 前M大的數
最開始的思路是 最大的和肯定由原始序列種最大的前k個數兩兩組合產生,由於m 1000,所以輸入序列中的前50個數就夠用了 50 49 2 1225 1000 然後用兩次stl裡的排序就能求出最大的m個數了,不知道為啥一直wa。只好寫了個counting sort ac了。方法一 計數排序 prog ...
hdoj 1280 前m大的數(水)
前m大的數 time limit 1000msmemory limit 32768kb64bit io format i64d i64u submit status practice hdu 1280 description 還記得gardon給小希布置的那個作業麼?上次比賽的1005 其實小希已經...