Proporcione una array de enteros positivos, encuentre la suma total después de realizar la operación OR bit a bit en todas las sub-arrays de una array dada.
Ejemplos:
Input : 1 2 3 4 5 Output : 71 Input : 6 5 4 3 2 Output : 84
Primero inicialice las dos variables sum=0, sum1=0, la variable sum almacenará la suma total y, con sum1, realizaremos la operación OR bit a bit para cada j-ésimo elemento, y sumaremos sum1 con sum.
1:- Recorrer desde la posición 0 hasta la n-1.
2: – Para cada i-ésima variable, realizaremos una operación OR bit a bit en todos los subarreglos para encontrar la suma total.
Repita el paso hasta que toda la array sea transversal.
C++
// C++ program to find sum of // bitwise ors of all subarrays. #include <iostream> using namespace std; int totalSum(int a[], int n) { int i, sum = 0, sum1 = 0, j; for (i = 0; i < n; i++) { sum1 = 0; // perform Bitwise OR operation // on all the subarray present // in array for (j = i; j < n; j++) { // OR operation sum1 = (sum1 | a[j]); // now add the sum after performing // the Bitwise OR operation sum = sum + sum1; } } return sum; } // Driver code int main() { int a[] = { 1, 2, 3, 4, 5 }; int n = sizeof(a) / sizeof(a[0]); cout << totalSum(a, n) << endl; return 0; } // This code is contributed // by Shivi_Aggarwal
C
// C program to find sum of bitwise ors // of all subarrays. #include <stdio.h> int totalSum(int a[], int n) { int i, sum = 0, sum1 = 0, j; for (i = 0; i < n; i++) { sum1 = 0; // perform Bitwise OR operation // on all the subarray present in array for (j = i; j < n; j++) { // OR operation sum1 = (sum1 | a[j]); // now add the sum after performing the // Bitwise OR operation sum = sum + sum1; } } return sum; } // Driver code int main() { int a[] = { 1, 2, 3, 4, 5 }; int n = sizeof(a)/sizeof(a[0]); printf("%d ", totalSum(a, n)); return 0; }
Java
// Java program to find sum // of bitwise ors of all subarrays. import java.util.*; import java.lang.*; import java.io.*; class GFG { static int totalSum(int a[], int n) { int i, sum = 0, sum1 = 0, j; for (i = 0; i < n; i++) { sum1 = 0; // perform Bitwise OR operation // on all the subarray present // in array for (j = i; j < n; j++) { // OR operation sum1 = (sum1 | a[j]); // now add the sum after // performing the Bitwise // OR operation sum = sum + sum1; } } return sum; } // Driver code public static void main(String args[]) { int a[] = { 1, 2, 3, 4, 5 }; int n = a.length; System.out.println(totalSum(a,n)); } } // This code is contributed // by Subhadeep
Python3
# Python3 program to find sum of # bitwise ors of all subarrays. def totalSum(a, n): sum = 0; for i in range(n): sum1 = 0; # perform Bitwise OR operation # on all the subarray present # in array for j in range(i, n): # OR operation sum1 = (sum1 | a[j]); # now add the sum after # performing the # Bitwise OR operation sum = sum + sum1; return sum; # Driver code a = [1, 2, 3, 4, 5]; n = len(a); print(totalSum(a, n)); # This code is contributed by mits
C#
// C# program to find sum // of bitwise ors of all // subarrays. using System; class GFG { static int totalSum(int[] a, int n) { int sum = 0; for(int i = 0; i < n; i++) { int sum1 = 0; // perform Bitwise OR operation // on all the subarray present // in array for (int j = i; j < n; j++) { // OR operation sum1 = (sum1 | a[j]); // now add the sum after // performing the Bitwise // OR operation sum = sum + sum1; } } return sum; } // Driver code static void Main() { int[] a = { 1, 2, 3, 4, 5 }; int n = a.Length; Console.WriteLine(totalSum(a,n)); } } // This code is contributed // by mits
PHP
<?php // PHP program to find // sum of bitwise ors // of all subarrays. function totalSum($a,$n) { $sum = 0; for ($i = 0; $i < $n; $i++) { $sum1 = 0; // perform Bitwise OR operation // on all the subarray present // in array for ($j = $i; $j < $n; $j++) { // OR operation $sum1 = ($sum1 | $a[$j]); // now add the sum after // performing the // Bitwise OR operation $sum = $sum + $sum1; } } return $sum; } // Driver code $a = array(1, 2, 3, 4, 5); $n = sizeof($a); echo totalSum($a, $n); // This code is contributed by mits ?>
Javascript
<script> // Java program to find sum // of bitwise ors of all subarrays. function totalSum(a, n) { let i, sum = 0, sum1 = 0, j; for (i = 0; i < n; i++) { sum1 = 0; // perform Bitwise OR operation // on all the subarray present // in array for (j = i; j < n; j++) { // OR operation sum1 = (sum1 | a[j]); // now add the sum after // performing the Bitwise // OR operation sum = sum + sum1; } } return sum; } // Driver code let a = [ 1, 2, 3, 4, 5 ]; let n = a.length; document.write(totalSum(a,n)); // This code is contributed shivanisinghss2110 </script>
71
Publicación traducida automáticamente
Artículo escrito por Mohd_Saliem y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA