在排序算法实现时我们采用头文件algorithm中的sort()函数
使用时
#include<algorithm>
using namespace std;
sort(a,a+n);
其中a为数组,n为数组的长度,升序排整个数组。
当然这个函数的具体参数定义方法,可以到c++官方文档中查询,文档链接:
http://cplusplus.com/reference/algorithm/sort/?kw=sort
CodeForces 984A
原题链接:https://codeforces.com/problemset/problem/984/A
【题干】
一天KID1412KID和AnnaYang进行一个游戏。游戏开始时在黑板上写有n 个数字 a1,a2,… ,an,每一轮由一个人选择一个数字,井将它从黑板上擦去。这个游戏直到黑板上只剩下一个数字时结束,也就是说会有 n-1 轮游戏进行。
第一个玩家进行第一轮操作,第二个玩家进行之后的一轮操作。KID1412KID作为先手,希望最后黑板上留下来的数字越小越好,而作为后手的AnnaYang希望最后黑板上留下来的数字越大越好。
KID1412KID想知道如果两个人都采取最优的策略,n-1 轮后黑板上留下来的数字是多少?
【输入】
第一行包含一个整数n(1 ≤ n ≤ 1000)——黑板上初始的数字个数。第二行包含 n 个整数a1,a2,… ,an(1≤ai≤10^6)。
【输出】
黑板上剩下的那个数字。
【样例】
输入
3
2 1 3
输出
2
输入
3
2 2 2
输出
2
【代码】
#include<stdio.h>
#include<algorithm>
using namespace std;
int a[1005];
int main()
{
int n;
scanf("%d",&n);
for(int i=0;i<n;i++)
scanf("%d",&a[i]);
sort(a,a+n);
if(!(n%2))printf("%d",a[(n/2)-1<