Dado que r es el radio de tres círculos iguales que se tocan entre sí. La tarea es encontrar la longitud de la cuerda atada alrededor de los círculos como se muestra a continuación:
Ejemplos:
Entrada: r = 7
Salida: 86Entrada: r = 14
Salida: 172
Aproximación: Como se puede ver claramente en la imagen de arriba, la parte de la longitud de la cuerda que no toca el círculo es 2r + 2r + 2r = 6r .
La parte de la cuerda que toca los círculos forma un sector de 120 grados en cada círculo. Así, tres sectores de 120 grados cada uno pueden considerarse como un círculo completo de 360 grados.
Por lo tanto, la longitud de la cuerda que toca el círculo es 2 * PI * r donde PI = 22/7 y r es el radio del círculo.
Por lo tanto, la longitud total de la cuerda será (2 * PI * r) + 6r .
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ program to find the length // of rope #include<bits/stdc++.h> using namespace std; #define PI 3.14159265 // Function to find the length // of rope float length_rope( float r ) { return ( ( 2 * PI * r ) + 6 * r ); } // Driver code int main() { float r = 7; cout<<ceil(length_rope( r ))<<endl; return 0; }
C
// C program to find the length // of rope #include <stdio.h> #define PI 3.14159265 // Function to find the length // of rope float length_rope( float r ) { return ( ( 2 * PI * r ) + 6 * r ); } // Driver code int main() { float r = 7; printf("%f", length_rope( r )); return 0; }
Java
// Java code to find the length // of rope import java.lang.*; class GFG { static double PI = 3.14159265; // Function to find the length // of rope public static double length_rope(double r) { return ((2 * PI * r) + 6 * r); } // Driver code public static void main(String[] args) { double r = 7; System.out.println(length_rope(r)); } }
Python3
# Python3 code to find the length # of rope PI = 3.14159265 # Function to find the length # of rope def length_rope( r ): return ( ( 2 * PI * r ) + 6 * r ) # Driver code r = 7 print( length_rope( r ))
C#
// C# code to find the length // of rope using System; class GFG { static double PI = 3.14159265; // Function to find the length // of rope public static double length_rope(double r) { return ((2 * PI * r) + 6 * r); } // Driver code public static void Main() { double r = 7.0; Console.Write(length_rope(r)); } }
PHP
<?php // PHP program to find the // length of rope $PI = 3.14159265; // Function to find the length // of rope function length_rope( $r ) { global $PI; return ( ( 2 * $PI * $r ) + 6 * $r ); } // Driver code $r=7; echo(length_rope( $r )); ?>
Javascript
<script> // Javascript program to find the length // of rope const PI = 3.14159265; // Function to find the length // of rope function length_rope(r) { return((2 * PI * r) + 6 * r); } // Driver code let r = 7; document.write(Math.ceil(length_rope(r))); // This code is contributed by souravmahato348 </script>
86
Complejidad de tiempo: O(1)
Espacio Auxiliar: O(1)