题意:
给出N个开口向下的抛物线的a,b,c,要求输出顶点最高的抛物线是哪一条
思路:
直接抛物线公式算得
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <stack>
#include <queue>
#include <map>
#include <set>
#include <vector>
#include <math.h>
#include <bitset>
#include <algorithm>
#include <climits>
using namespace std;
#define ls 2*i
#define rs 2*i+1
#define UP(i,x,y) for(i=x;i<=y;i++)
#define DOWN(i,x,y) for(i=x;i>=y;i--)
#define MEM(a,x) memset(a,x,sizeof(a))
#define W(a) while(a)
#define gcd(a,b) __gcd(a,b)
#define LL long long
#define ULL unsigned long long
#define N 100005
#define INF 0x3f3f3f3f
#define EXP 1e-8
#define rank rank1
const int mod = 1000000007;
int main()
{
int T,a,b,c,n;
scanf("%d",&T);
while(T--)
{
double maxn=-INF;
int aa=0;
double x,sum;
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
scanf("%d%d%d",&a,&b,&c);
a=-a;
sum=(4*a*c-b*b)/(4.0*a);
if(sum>maxn)
{
maxn=sum;
aa=i;
}
}
printf("%d\n",aa);
}
return 0;
}