Número de substrings pares en una string de dígitos

Dada una string de dígitos del 0 al 9. La tarea es contar una cantidad de substrings que, al convertirlas en números enteros, forman un número par.

Ejemplos: 

C++

// C++ program to count number of substring
// which are even integer in a string of digits.
#include<bits/stdc++.h>
using namespace std;
 
// Return the even number substrings.
int evenNumSubstring(char str[])
{
    int len = strlen(str);
    int count = 0;
 
    for (int i = 0; i < len; i++)
    {
        int temp = str[i] - '0';
 
        // If current digit is even, add
        // count of substrings ending with
        // it. The count is (i+1)
        if (temp % 2 == 0)
            count += (i + 1);
    }
 
    return count;
}
 
// Driven Program
int main()
{
    char str[] = "1234";
    cout << evenNumSubstring(str) << endl;
    return 0;
}

Java

// Java program to count number of
// substring which are even integer
// in a string of digits.
public class GFG {
     
    // Return the even number substrings.
    static int evenNumSubstring(String str)
    {
        int len = str.length();
        int count = 0;
     
        for (int i = 0; i < len; i++)
        {
            int temp = str.charAt(i) - '0';
     
            // If current digit is even, add
            // count of substrings ending with
            // it. The count is (i+1)
            if (temp % 2 == 0)
                count += (i + 1);
        }
     
        return count;
    }
     
    public static void main(String args[])
    {
         
        String str= "1234";
         
        System.out.println(evenNumSubstring(str));
    }
}
 
// This code is contributed by Sam007.

Python3

# Python 3 program to count number of substring
# which are even integer in a string of digits.
 
 
# Return the even number substrings.
def evenNumSubstring(str):
    length = len(str)
    count = 0
 
    for i in range(0,length,1):
        temp = ord(str[i]) - ord('0')
 
        # If current digit is even, add
        # count of substrings ending with
        # it. The count is (i+1)
        if (temp % 2 == 0):
            count += (i + 1)
 
    return count
 
# Driven Program
if __name__ == '__main__':
    str = ['1','2','3','4']
    print(evenNumSubstring(str))
 
# This code is contributed by
# Surendra_Gangwar

C#

// C# program to count number of
// substring which are even integer
// in a string of digits.
using System;
 
public class GFG {
     
    // Return the even number substrings.
    static int evenNumSubstring(string str)
    {
        int len = str.Length;
        int count = 0;
     
        for (int i = 0; i < len; i++)
        {
            int temp = str[i] - '0';
     
            // If current digit is even,
            // add count of substrings
            // ending with it. The count
            // is (i+1)
            if (temp % 2 == 0)
                count += (i + 1);
        }
     
        return count;
    }
     
    // Driver code
    public static void Main()
    {
        string str= "1234";
     
        Console.Write(
            evenNumSubstring(str));
    }
}
 
// This code is contributed by Sam007.

PHP

<?php
// PHP program to count number
// of substring which are even
// integer in a string of digits.
 
// Return the even number substrings.
function evenNumSubstring($str)
{
    $len = strlen($str);
    $count = 0;
 
    for ($i = 0; $i < $len; $i++)
    {
        $temp = $str[$i] - '0';
 
        // If current digit is even, add
        // count of substrings ending with
        // it. The count is (i+1)
        if ($temp % 2 == 0)
            $count += ($i + 1);
    }
 
    return $count;
}
 
// Driver Code
$str = "1234";
echo evenNumSubstring($str),"\n" ;
 
// This code is contributed by jit_t   
?>

Javascript

<script>
 
    // Javascript program to count number of
    // substring which are even integer
    // in a string of digits.
     
    // Return the even number substrings.
    function evenNumSubstring(str)
    {
        let len = str.length;
        let count = 0;
       
        for (let i = 0; i < len; i++)
        {
            let temp = str[i] - '0';
       
            // If current digit is even,
            // add count of substrings
            // ending with it. The count
            // is (i+1)
            if (temp % 2 == 0)
                count += (i + 1);
        }
       
        return count;
    }
     
    let str= "1234";
       
    document.write(evenNumSubstring(str));
         
</script>

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *