【发布时间】:2016-03-02 14:29:17
【问题描述】:
我有 N 个整数 Ai 定义为 A1, A2, ..., AN。我必须处理表格 a 的 Q 查询。对于每个这样的查询,找到一个索引 i 使得 Ai ≥ a。我必须尽量减少 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 。有什么有效的方法吗?
【问题讨论】:
-
你需要
Ai数组中的确切位置,还是只需要它的值? -
我需要ai元素的索引i
-
@ankitkumar 提供问题陈述和问题来源,以确保它不是任何跑步比赛的一部分