Skip to content
Related Articles

Related Articles

Count pieces of circle after N cuts
  • Difficulty Level : Basic
  • Last Updated : 27 Nov, 2018
GeeksforGeeks - Summer Carnival Banner

Given an integer N, where 1 \leq N \leq 10^{18}. The task is to print the count of pieces of a circle with N cuts where each cut passes through the centre of given circle.

Examples:

Input : N = 2
Output : 4

Input : N = 100
Output : 200

Approach: This problem can be easily solved with observation only. Since each cut passes through the centre, each cut creates two new pieces.

Let us see how above Intuition works.



  • At first cut we have 2 different pieces of circle.
  • At second cut we have 2 new different pieces from previous 2 pieces of circle.
  • At third cut we have again 2 new different pieces from any of previous 2 pieces which are opposite to each other.

Circle with N cuts through center

In this way, we proceed with N cuts to get the count of total pieces after N cuts.

Below is the implementation of above approach:

C++




// C++ program to find number of pieces
// of circle after N cuts
  
#include <bits/stdc++.h>
using namespace std;
  
// Function to find number of pieces
// of circle after N cuts
int countPieces(int N)
{
    return 2 * N;
}
  
// Driver program
int main()
{
    int N = 100;
  
    cout << countPieces(N);
  
    return 0;
}

Java




// Java program to find number of pieces
// of circle after N cuts
import java.util.*;
  
class solution
{
  
// Function to find number of pieces
// of circle after N cuts
static int countPieces(int N)
{
    return 2 * N;
}
  
// Driver program
public static void main(String args[])
{
    int N = 100;
  
    System.out.println(countPieces(N));
  
}
  
}

Python3




# Python program to find number 
# of pieces of circle after N cuts 
  
# Function to find number of 
# pieces of circle after N cuts 
def countPieces(N):
    return 2 *
  
# Driver Code 
N = 100
  
print(countPieces(N))
  
# This code is contributed by
# Sanjit_Prasad

C#




// C# program to find number of pieces
// of circle after N cuts
  
class solution
{
  
// Function to find number of pieces
// of circle after N cuts
static int countPieces(int N)
{
    return 2 * N;
}
  
// Driver program
static void Main()
{
    int N = 100;
  
    System.Console.WriteLine(countPieces(N));
  
}
  
}
// This code is contributed by mits

PHP




<?php
// PHP program to find number of 
// pieces of circle after N cuts
  
// Function to find number of pieces
// of circle after N cuts
function countPieces($N)
{
    return 2 * $N;
}
  
// Driver Code
$N = 100;
  
echo countPieces($N);
  
// This code is contributed by anuj_67
?>
Output:
200

Time Complexity: O(1)

Want to learn from the best curated videos and practice problems, check out the C++ Foundation Course for Basic to Advanced C++ and C++ STL Course for foundation plus STL.
My Personal Notes arrow_drop_up
Recommended Articles
Page :