A square is a flat shape, in one plane, defined by four points at the four corners. A square has four sides all of equal length, and four corners, all right angles (90 degree angles). A square is a kind of rectangle.
Given a square of side and number of folds . The task is to find the area of square after F-th fold.
The folding of square is as follows:
- In 1st folding, fold the square from left to right side in the form a triangle.
- In 2nd folding, fold the square from up to down side.
- In 3rd folding, again fold the square from left to right side.
Examples:
Input : N = 4, F = 2 Output : 2 Explanation: Initially square side is 4 x 4 After 1st folding, square side becomes 4 x 2 After 2nd folding, square side becomes 2 x 2 Thus area equals 2 x 2 = 4. Input : N = 100, F = 6 Output : 156.25
Approach:
- Initially calculate the area of the square before folding.
- After each folding, the area of square reduces by half. That is, area = area/2.
- So, we finally divide the area of square by pow(2, F)
Below is the implementation of above approach:
C++
// CPP program to find // the area of the square #include <bits/stdc++.h> using namespace std; // Function to calculate area of square after // given number of folds double areaSquare( double side, double fold) { double area = side * side; return area * 1.0 / pow (2, fold); } // Driver Code int main() { double side = 4, fold = 2; cout << areaSquare(side, fold); return 0; } |
Java
// Java program to find the area of the square class GFG { // Function to calculate area of square // after given number of folds static double areaSquare( double side, double fold) { double area = side * side; return area * 1.0 / Math.pow( 2 , fold); } // Driver Code public static void main(String []args) { double side = 4 , fold = 2 ; System.out.println(areaSquare(side, fold)); } } // This code is contributed // by aishwarya.27 |
Python3
# Python3 program to find the area # of the square # Function to calculate area of # square after given number of folds def areaSquare(side, fold) : area = side * side ans = area / pow ( 2 , fold) return ans # Driver Code if __name__ = = "__main__" : side = 4 fold = 2 print (areaSquare(side, fold)) # This code is contributed by Ryuga |
C#
// C# program to find the area of the square using System; class GFG { // Function to calculate area of square // after given number of folds static double areaSquare( double side, double fold) { double area = side * side; return area * 1.0 / Math.Pow(2, fold); } // Driver Code public static void Main() { double side = 4, fold = 2; Console.Write(areaSquare(side, fold)); } } // This code is contributed // by Akanksha Rai |
PHP
<?php // PHP program to find the area of the square // Function to calculate area of square // after given number of folds function areaSquare( $side , $fold ) { $area = $side * $side ; return $area * 1.0 / pow(2, $fold ); } // Driver Code $side = 4; $fold = 2; echo areaSquare( $side , $fold ); // This code is contributed by ajit ?> |
Javascript
<script> // Javascript program to find // the area of the square // Function to calculate area of square after // given number of folds function areaSquare( side, fold) { var area = side * side; return (area * 1.0 )/ (Math.pow(2, fold)); } // Driver Code var side = 4, fold = 2; document.write(areaSquare(side, fold)); // This code is contributed by akshitsaxenaa09. </script> |
4
Time complexity : O(logn)
Auxiliary Space : O(1)
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!