AtCoder Beginner Contest 161 B Popular Vote Quick Sort + Divide + Mod

AtCoder Beginner Contest 161 El   número de concursantes es 9927   rápido, ver todas las preguntas 5 minutos después del inicio del concurso

AtCoder Beginner Contest 161 B Popular Vote Quick Sort + Divide + Mod

Ver https://blog.csdn.net/mrcrack/article/details/104454762 para el catálogo general

Dirección de evaluación en línea https://atcoder.jp/contests/abc161/tasks/abc161_b

Tema:

M significa cantidad opcional. Si todas las M satisfacen las restricciones, salida Sí, de lo contrario, salida No.

Ideas basicas:

Ordene por el número de votos de mayor a menor. Después de ordenar, seleccione el número de votos número M para ver si se cumplen las restricciones.

Cabe señalar que al dividir por 4M, hay dos casos a considerar: divisible por, no divisible por.

#include <cstdio>
#include <algorithm>
using namespace std;
int a[110];
int cmp(int a,int b){
	return a>b;
}
int main(){
	int n,m,i,b=0,c;
	scanf("%d%d",&n,&m);
	for(i=1;i<=n;i++)scanf("%d",&a[i]),b+=a[i];
	sort(a+1,a+1+n,cmp);
	c=4*m;
	if(b%c==0)b/=c;
	else b=b/c+1;
	if(a[m]>=b)printf("Yes\n");
	else printf("No\n");
	return 0;
}

 

Publicado 660 artículos originales · elogiado 562 · 480,000 visitas

Supongo que te gusta

Origin blog.csdn.net/mrcrack/article/details/105321940
Recomendado
Clasificación