为什么第9个点会超时?
查看原帖
为什么第9个点会超时?
824489
ZJK_0楼主2022/12/5 17:14
#include"stdio.h"
void quicksort(int a[], int low,int high) {
	if (low < high) {
		int i = low, j = high, k = a[low];
		while (i < j) {
			while (i < j && a[j] >= k) {
				j--;
			}
			if (i < j) {
				a[i] = a[j];
				i++;
			}
			while (i < j && a[i] < k) {
				i++;
			}
			if (i < j) {
				a[j] = a[i];
				j--;
			}
		}
		a[i] = k;
		quicksort(a, low, i - 1); quicksort(a, i + 1, high);
	}
}
int main() {
	int n;
	int a[100000];
	scanf("%d", &n);
	for (int i = 0; i < n; i++) {
		scanf("%d", &a[i]);
	}
	quicksort(a, 0, n - 1);
	int count=0;
	for (int i = 0; i < n - 1; i++) {
		if (a[i] != a[i + 1]) {
			count++;
		}
	}
	printf("%d", 10 * a[n-1] + 5 * (count+1) + n);
}
2022/12/5 17:14
加载中...