這是我對問題陳述的方法http://www.spoj.com/problems/ABSP1/ - 請檢查我的代碼是否存在任何轉角情況,因爲根據我的測試用例,它會給出正確的答案。SPOJ「abs(a-b)I」錯誤答案issue
問題陳述:
您給出N個數的非遞減的順序數組。您有 可以回答給定數組中所有不同 對的絕對差的總和。
scanf(「%d」,& TotalElements);
for(i=0;i<TotalElements;i++)
scanf("%d",&Array[i]);
FirstSum=TotalSum=0;
for(i=0;i<TotalElements;i++)
FirstSum+=abs(Array[i]-Array[0]);
TotalSum=FirstSum;
SumTillNow=Array[0];
for(i=1;i<TotalElements;i++){
Difference=Array[i]-Array[0];
NextSum=FirstSum-Difference*(TotalElements-i)-SumTillNow+(i)*Array[0];
TotalSum+=NextSum;
SumTillNow+=Array[i];
}
printf("%lld\n",TotalSum);
你可以簡單介紹一下你的代碼以及問題陳述嗎? –