問題描述
給兩組數,各n個。
請調整每組數的排列順序,使得兩組資料相同下標元素對應相乘,然後相加的和最小。要求程式輸出這個最小值。
例如兩組數分別為:1 3 -5和-2 4 1
那麼對應乘積取和的最小值應為:
(-5) * 4 + 3 * (-2) + 1 * 1 = -25
輸入格式
第乙個行乙個數t表示資料組數。後面每組資料,先讀入乙個n,接下來兩行每行n個數,每個數的絕對值小於等於1000。
n<=8,t<=1000
輸出格式
乙個數表示答案。
樣例輸入
231 3 -5
-2 4 1
51 2 3 4 5
1 0 1 0 1
樣例輸出
-25和其他藍橋杯題目一樣6
總喜歡在題意上繞
一樣難懂這個t
到底是什麼
還好看了樣例
有了這段**
#include
int a1[100000];
int a2[100000];
int sum[10000];
void kuai (int *a,int left,int right)
int i=left;
int j=right;
int key=a[left];
while (i
a[i]=a[j];
while(i
a[j]=a[i];
}a[i]=key;
kuai(a,left,i-1);
kuai(a,i+1,right);
}int main()
for (j=0;j
kuai(a1,0,n-1);
kuai(a2,0,n-1);
sum[i]=0;
for (j=0;j
}for (i=0;i
return 0;
}
演算法訓練 最小乘積 基本型
問題描述 給兩組數,各n個。請調整每組數的排列順序,使得兩組資料相同下標元素對應相乘,然後相加的和最小。要求程式輸出這個最小值。例如兩組數分別為 1 3 5和 2 4 1 那麼對應乘積取和的最小值應為 5 4 3 2 1 1 25 輸入格式 第乙個行乙個數t表示資料組數。後面每組資料,先讀入乙個n,...
藍橋杯 演算法訓練 最小乘積 基本型
問題描述 給兩組數,各n個。請調整每組數的排列順序,使得兩組資料相同下標元素對應相乘,然後相加的和最小。要求程式輸出這個最小值。例如兩組數分別為 1 3 5和 2 4 1 那麼對應乘積取和的最小值應為 5 4 3 2 1 1 25 輸入格式 第乙個行乙個數t表示資料組數。後面每組資料,先讀入乙個n,...
藍橋杯 演算法訓練 最小乘積 基本型
演算法訓練 最小乘積 基本型 時間限制 1.0s 記憶體限制 512.0mb 問題描述 給兩組數,各n個。請調整每組數的排列順序,使得兩組資料相同下標元素對應相乘,然後相加的和最小。要求程式輸出這個最小值。例如兩組數分別為 1 3 5和 2 4 1 那麼對應乘積取和的最小值應為 5 4 3 2 1 ...