A1、A2、...、AN として定義された N 個の整数 Ai があります。フォーム a の Q クエリを処理する必要があります。このようなクエリごとに、Ai ≥ a となるインデックス i を見つけます。そして、Ai-a の差を最小限に抑える必要があります。私はそれのようにやった
while(q--)
{
cin>>a;
mini=INT_MAX;
index=-1;
for(int i=0;i<n;i++)
{
diff1=A[i]-a;
if(diff1>=0)
{
ll sum=diff1;
if(sum<mini)
{
mini=sum;
index=i+1;
}
if(mini==0)
break;
}
}
cout<<index;
}
しかし、それは TLE につながります。それを行うための効率的な方法は何ですか?