Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

Count Number of animals in a zoo from given number of head and legs

  • Last Updated : 14 Apr, 2021

Given the total number of Legs and Head of Rabbits and Pigeons. The task is to calculate the number of Rabbits and Pigeons.
Examples: 
 

Input: Heads = 200, Legs = 540 
Output: Rabbits = 70, Pigeons = 130

Input: Heads = 100, Legs = 300
Output: Rabbits = 50, Pigeons = 50

 

Attention reader! Don’t stop learning now. Get hold of all the important mathematical concepts for competitive programming with the Essential Maths for CP Course at a student-friendly price. To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.

 

Let the total no. of Heads = 200 and Legs = 540. 
Let the number of Head and Legs of Rabbits = X and that of Pigeons = Y. 
so, 
X + Y = 200 ..equation 1 (no. of the heads of a rabbit and a pigeon = total no. of heads) 
(As both of them has 1 head) 
4X + 2Y = 540 …equation 2 (no. of the legs of the rabbit and a pigeon = total no. of legs) 
(Rabbit have 4 legs and pigeons have 2 legs) 
Now, solving equation 1 and 2 we get, 
4X = 540 – 2Y 
4X = 540 – 2 * (200 – X) 
4X = 540 – 400 + 2X 
2X = 140 => X = 70
X = 70 and Y = 130. 
hence, Rabbits = 70 and Pigeons = 130 
 

Below is the implementation of the above approach: 
 

C++




// C++ implementation of above approach
#include <bits/stdc++.h>
using namespace std;
 
// Function that calculates Rabbits
int countRabbits(int Heads, int Legs)
{
    int count = 0;
 
    count = (Legs)-2 * (Heads);
    count = count / 2;
 
    return count;
}
 
// Driver code
int main()
{
    int Heads = 100, Legs = 300;
 
    int Rabbits = countRabbits(Heads, Legs);
 
    cout << "Rabbits = " << Rabbits << endl;
    cout << "Pigeons = " << Heads - Rabbits << endl;
 
    return 0;
}

Java




// Java implementation of above approach
import java.util.*;
import java.lang.*;
 
class GFG
{
// Function that calculates Rabbits
static int countRabbits(int Heads,
                        int Legs)
{
    int count = 0;
 
    count = (Legs) - 2 * (Heads);
    count = count / 2;
 
    return count;
}
 
// Driver code
public static void main(String args[])
{
    int Heads = 100, Legs = 300;
 
    int Rabbits = countRabbits(Heads, Legs);
 
    System.out.println("Rabbits = " +
                        Rabbits);
    System.out.println("Pigeons = " +
                      (Heads - Rabbits));
}
}
 
// This code is contributed
// by Akanksha Rai(Abby_akku)

Python3




# Python 3 implementation of above approach
 
# Function that calculates Rabbits
def countRabbits(Heads, Legs):
    count = 0
 
    count = (Legs) - 2 * (Heads)
    count = count / 2
 
    return count
 
# Driver code
if __name__ == '__main__':
    Heads = 100
    Legs = 300
 
    Rabbits = countRabbits(Heads, Legs)
 
    print("Rabbits =", Rabbits)
    print("Pigeons =", Heads - Rabbits)
 
# This code is contributed
# by Surendra_Gangwar

C#




// C# implementation of above approach
using System;
 
class GFG
{
// Function that calculates Rabbits
static int countRabbits(int Heads,
                        int Legs)
{
    int count = 0;
 
    count = (Legs) - 2 * (Heads);
    count = count / 2;
 
    return count;
}
 
// Driver code
public static void Main()
{
    int Heads = 100, Legs = 300;
 
    int Rabbits = countRabbits(Heads, Legs);
 
    Console.WriteLine("Rabbits = " +
                       Rabbits);
    Console.WriteLine("Pigeons = " +
                     (Heads - Rabbits));
}
}
 
// This code is contributed
// by Akanksha Rai(Abby_akku)

PHP




<?php
// PHP implementation of above approach
 
// Function that calculates Rabbits
function countRabbits($Heads, $Legs)
{
    $count = 0;
 
    $count = ($Legs) - 2 * ($Heads);
    $count = (int) $count / 2;
 
    return $count;
}
 
// Driver code
$Heads = 100;
$Legs = 300;
$Rabbits = countRabbits($Heads, $Legs);
 
echo "Rabbits = " , $Rabbits , "\n";
echo "Pigeons = " , $Heads -
                    $Rabbits, "\n";
 
// This code is contributed
// by Sach_Code
?>

Javascript




<script>
 
// Javascript implementation of above approach
 
// Function that calculates Rabbits
function countRabbits(Heads, Legs)
{
    var count = 0;
 
    count = (Legs)-2 * (Heads);
    count = count / 2;
 
    return count;
}
 
// Driver code
var Heads = 100, Legs = 300;
var Rabbits = countRabbits(Heads, Legs);
document.write( "Rabbits = " + Rabbits + "<br>");
document.write( "Pigeons = " + (Heads - Rabbits));
 
</script>
Output: 
Rabbits = 50
Pigeons = 50

 




My Personal Notes arrow_drop_up
Recommended Articles
Page :