3 1 2 5 -1 5 3 1 2 3 4 5 0 0
5 5 4 3
水题。
代码如下:
#include <cstdio> #include <queue> #include <algorithm> using namespace std; bool cmp(int a,int b) { return a>b; } int main() { int n,m; //总人数和要寻找的大富翁数 int a[100011]; while (~scanf ("%d %d",&n,&m) && (n||m)) { for (int i=1;i<=n;i++) scanf ("%d",&a[i]); sort(a+1,a+n+1,cmp); if (m>n) { for (int i=1;i<n;i++) printf ("%d ",a[i]); printf ("%d\n",a[n]); } else { for (int i=1;i<m;i++) printf ("%d ",a[i]); printf ("%d\n",a[m]); } } }