Rumah >pembangunan bahagian belakang >C++ >Dalam bahasa C, perbezaan mutlak maksimum antara jumlah nilai dan indeks

Dalam bahasa C, perbezaan mutlak maksimum antara jumlah nilai dan indeks

WBOY
WBOYke hadapan
2023-08-25 20:25:031162semak imbas

Dalam bahasa C, perbezaan mutlak maksimum antara jumlah nilai dan indeks

Kami mendapat tatasusunan integer. Tugasnya adalah untuk mengira perbezaan mutlak maksimum antara jumlah nilai dan eksponen. Iaitu, untuk setiap pasangan indeks (i,j) dalam tatasusunan, kita perlu mengira | ] |. Arr[i] - A[j] + |i-j| dan cari jumlah maksimum yang mungkin. Di sini |A| mewakili nilai mutlak A. Jika tatasusunan mempunyai 4 elemen, indeksnya ialah 0,1,2,3 dan pasangan unik ialah ( (0,0), (1,1), (2,2), (3,3) , (0 , 1), (0,2), (0,3), (1,2), (1,3), (2,3) ).

Input − Arr[] = { 1,2,4,5 }

Output − Perbezaan mutlak maksimum antara nilai dan jumlah indeks − 7

Tafsiran A ]- A[j] |. A[i]-A[j] + |i-j |. indeks Nilai mutlak maksimum − 13

Penjelasan − Jumlah pasangan indeks | A[i]-A[j] |.

Kami menggunakan Tatasusunan integer Arr[]

Fungsi maxabsDiff(int arr[],int n) digunakan untuk mengira perbezaan mutlak maksimum jumlah nilai dan indeks.

Kami memulakan hasil pembolehubah kepada -1.
  • Rentasi tatasusunan integer dari permulaan tatasusunan dalam gelung for.
  • Lintas elemen yang tinggal dalam gelung bersarang untuk dan hitung jumlah mutlak nilai elemen dan indeks i, j (abs(arr[i] - arr[j]) + abs(i - j)), dan simpannya dalam absDiff berubah-ubah.
  • Jika jumlah yang baru dikira ini lebih besar daripada jumlah sebelumnya, simpan dalam 'hasil'.
  • Kembalikan hasil selepas melelakan keseluruhan tatasusunan.
  • Contoh
  • Demonstrasi

    1. (0,0), (1,1), (2,2), (3,3)--------- |i-j| for each is 0.
    2. (0,1)---------- |1-2| + |0-1|= 1+1 = 2
    3. (0,2)---------- |1-4| + |0-2|= 3+2 = 5
    4. (0,3)---------- |1-5| + |0-3|= 4+3 = 7
    5. (1,2)---------- |2-4| + |1-2|= 2+1 = 3
    6. (1,3)---------- |2-5| + |1-3|= 3+2 = 5
    7. (2,3)---------- |4-5| + |2-3|= 1+1 = 2
    Maximum value of such a sum is 7.

    Output
  • Jika kita menjalankan kod di atas, ia akan menghasilkan output berikut -

    1. (0,0), (1,1), (2,2)--------- |i-j| for each is 0.
    2. (0,1)---------- |10-20| + |0-1|= 10+1 = 11
    3. (0,2)---------- |10-21| + |0-2|= 11+2 = 13
    4. (1,2)---------- |20-21| + |1-2|= 1+1 = 2
    Maximum value of such a sum is 13.

Atas ialah kandungan terperinci Dalam bahasa C, perbezaan mutlak maksimum antara jumlah nilai dan indeks. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam