有趣的數字

2021-08-17 17:41:21 字數 898 閱讀 6701

小q今天在上廁所時想到了這個問題:有n個數,兩兩組成二元組,差的絕對值最小的有多少對呢?差的絕對值最大的呢?

輸入描述:

輸入包含多組測試資料。 對於每組測試資料: n - 本組測試資料有n個數 a1,a2...an - 需要計算的資料 保證: 1<=n<=100000,0<=ai<=int_max.

輸出描述:

對於每組資料,輸出兩個數,第乙個數表示差的絕對值最小的對數,第二個數表示差的絕對值最大的對數。

輸入例子:

6

45 12 45 32 5 6

輸出例子:

1 2

首先對資料進行排序,氣泡排序會超時,我用快排可以。

最大值的對數相對好球,直接統計最大值有多少個,最小值有多少個。用最大值的數量乘以最小值的數量。

當元素都相同時,最大值的對數等於最小值為0時的最小值對數。

最小值求對數分兩種情況:

①:最小值為0  判斷相同元素

②:最小值不為0 ,那麼肯定沒有相等元素存在,統計相鄰元素的差等於最小值 的數量即可

#include #include #include #include #includeusing namespace std;

int main()

maxx=count1*count2;

minn=9999999;

for(i=0;i=0)}}

else

}if(count1==n)

printf("%d %d\n",num1,num1);

else

printf("%d %d",num1,maxx);

}return 0;

}

有趣的數字

我們把乙個數稱為有趣的,當且僅當 1.它的數字只包含0,1,2,3,且這四個數字都出現過至少一次。2.所有的0都出現在所有的1之前,而所有的2都出現在所有的3之前。3.最高位數字不為0。因此,符合我們定義的最小的有趣的數是2013。除此以外,4位的有趣的數還有兩個 2031和2301。請計算恰好有n...

有趣的數字

小q今天在上廁所時想到了這個問題 有n個數,兩兩組成二元組,差最小的有多少對呢?差最大呢?輸入描述 輸入包含多組測試資料。對於每組測試資料 n 本組測試資料有n個數 a1,a2.an 需要計算的資料 保證 1 n 100000,0 ai int max.輸出描述 對於每組資料,輸出兩個數,第乙個數表...

有趣的數字(C )

程式設計題 有趣的數字 時間限制 1秒 空間限制 32768k 小q今天在上廁所時想到了這個問題 有n個數,兩兩組成二元組,相差最小的有多少對呢?相差最大呢?輸入描述 輸入包含多組測試資料。對於每組測試資料 n 本組測試資料有n個數 a1,a2 an 需要計算的資料 保證 1 n 100000,0 ...