第四题没那么复杂 #include <bits/stdc++.h> int main(int argc, const char* argv[]) {     std::ios::sync_with_stdio(false);     size_t N, K;     std::cin >> N >> K;     std::vector<size_t> val(N);     for(size_t i = 0; i < N; i++) {         std::cin >> val[i];     }     std::sort(val.begin(), val.end());     size_t idx = 0;     size_t previous = 0;     for(size_t i = 0; i < K; i++) {         if(idx == N) {             std::cout << "0\n";             continue;         }         std::cout << val[idx] - previous << std::endl;         previous = val[idx];         for(; idx < N; idx++) {             if(val[idx] != previous) {                 break;             }         }     }     return EXIT_SUCCESS; } 第三题举反例,最大数远大于其他数,然后最佳解应该是【最大数+较小的一半数】/【除了最大外的较大的一半数】
点赞 3

相关推荐

03-31 21:47
东南大学 C++
彭于晏前来求offe...:吓晕了
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务