Encuentra el término n-ésimo de la serie 1, 3, 6, 10, 15, 21…

Dado un número n, encuentra el término n-ésimo en la serie 1, 3, 6, 10, 15, 21…

Ejemplos: 

Input : 3
Output : 6

Input : 4
Output : 10 

Las series dadas representan números triangulares que son sumas de números naturales.

Enfoque ingenuo: 
la serie representa básicamente sumas de números naturales. El primer término es la suma de un solo número. El segundo término es la suma de dos números, y así sucesivamente. Una solución simple es sumar los primeros n números naturales. 

C++

// CPP program to find n-th term of
// series 1, 3, 6, 10, 15, 21...
#include <iostream>
using namespace std;
 
// Function to find the nth term of series
int term(int n)
{     
    // Loop to add numbers
    int ans = 0;
    for (int i = 1; i <= n; i++)   
        ans += i;
     
    return ans;
}
 
// Driver code
int main()
{
    int n = 4;
    cout << term(n) ;
    return 0;
}

Java

// Java program to find n-th term of
// series 1, 3, 6, 10, 15, 21...
import java.io.*;
 
class GFG {
     
    // Function to find the nth term of series
    static int term(int n)
    {    
        // Loop to add numbers
        int ans = 0;
        for (int i = 1; i <= n; i++)
            ans += i;
         
        return ans;
    }
 
     
    // Driver code
    public static void main(String args[])
    {
        int n = 4;
        System.out.println(term(n));
    }
}
 
 
// This code is contributed by Nikita Tiwari.

Python3

# Python 3 program to find
# n-th term of
# series 1, 3, 6, 10, 15, 21...
 
     
# Function to find the
# nth term of series
def term(n) :
    # Loop to add numbers
    ans = 0
    for i in range(1,n+1) :
        ans = ans + i
      
    return ans
 
 
# Driver code
n = 4
print(term(n))
 
# This code is contributed
# by Nikita Tiwari.

C#

// C# program to find n-th term of
// series 1, 3, 6, 10, 15, 21...
using System;
 
class GFG {
 
    // Function to find the nth term
    // of series
    static int term(int n)
    {
         
        // Loop to add numbers
        int ans = 0;
        for (int i = 1; i <= n; i++)
            ans += i;
 
        return ans;
    }
 
    // Driver code
    public static void Main()
    {
        int n = 4;
         
        Console.WriteLine(term(n));
    }
}
 
// This code is contributed by vt_m.

PHP

<?php
// PHP program to find n-th term of
// series 1, 3, 6, 10, 15, 21...
 
// Function to find the nth
// term of series
function term($n)
{
     
    // Loop to add numbers
    $ans = 0;
    for ($i = 1; $i <= $n; $i++)
        $ans += $i;
     
    return $ans;
}
 
// Driver code
$n = 4;
echo(term($n)) ;
 
// This code is contributed by Ajit.
?>

Javascript

<script>
 
// Javascript program to find n-th term of
// series 1, 3, 6, 10, 15, 21...
 
// Function to find the nth term of series
function term(n)
{
     
    // Loop to add numbers
    let ans = 0;
    for(let i = 1; i <= n; i++)   
        ans += i;
     
    return ans;
}
 
// Driver code
let n = 4;
 
document.write(term(n));
 
// This code is contributed by rishavmahato348
 
</script>

Producción: 

10

Complejidad de tiempo : O (N), ya que estamos usando un bucle para atravesar N veces.

Espacio auxiliar : O(1), ya que no estamos utilizando ningún espacio adicional.

Enfoque eficiente:

El patrón en esta serie es que el término n es igual a la suma de (n-1) el término y n .
Ejemplo : 

n = 2
2nd term equals to sum of 1st term and 2 i.e
A2 = A1 + 2 
   = 1 + 2
   = 3

Similarly,
A3 = A2 + 3
   = 3 + 3
   = 6 and so on..

Obtenemos: 

A(n) = A(n - 1) + n 
     = A(n - 2) + n + (n - 1)
     = A(n - 3) + n + (n - 1) + (n - 2) 
       .
       .
       .
     = A(1) + 2 + 3... + (n-1) + n

A(n) = 1 + 2 + 3 + 4... + (n - 1) + n
     = n(n + 1) / 2

i.e A(n) is sum of First n natural numbers.

A continuación se muestra la implementación del enfoque anterior: 

C++

// CPP program to find the n-th
// term in series 1 3 6 10 ...
#include <bits/stdc++.h>
using namespace std;
 
// Function to find nth term
int term(int n)
{
    return n * (n + 1) / 2;
}
 
// Driver code
int main()
{
    int n = 4;
    cout << term(n);
    return 0;
}

Java

// Java program to find the n-th
// term in series 1 3 6 10 ...
import java.io.*;
 
class Series {
     
    // Function to find nth term
    static int term(int n){
        return n * (n + 1) / 2;
    }
     
    // Driver Code
    public static void main (String[] args) {
        int n = 4;
        System.out.println(term(n));
    }
}
 
// This code is contributed by Chinmoy Lenka

Python

# Python program to find the Nth
# term in series 1 3 6 10 ...
 
# Function to print nth term
# of series 1 3 6 10 ....
def term(n):
    return n *(n + 1) / 2
     
# Driver code
n = 4
print term(n)

C#

// C# program to find the n-th
// term in series 1 3 6 10 ...
using System;
 
class GFG {
 
    // Function to find nth term
    static int term(int n)
    {
        return n * (n + 1) / 2;
    }
 
    // Driver Code
    public static void Main()
    {
        int n = 4;
         
        Console.WriteLine(term(n));
    }
}
 
// This code is contributed by vt_m.

PHP

<?php
// PHP program to find the n-th
// term in series 1 3 6 10 ...
 
// Function to find nth term
function term($n)
{
    return $n * ($n + 1) / 2;
}
 
// Driver code
$n = 4;
echo(term($n));
 
// This code is contributed by Ajit.
?>

Javascript

<script>
// Javascript program to find the n-th
// term in series 1 3 6 10 ...
 
// Function to find nth term
function term(n)
{
    return parseInt(n * (n + 1) / 2);
}
 
// Driver code
let n = 4;
document.write(term(n));
 
// This code is contributed by subhammahato348.
</script>

Producción : 
 

10

Complejidad de tiempo : O (1), ya que no estamos usando ningún bucle o recursión para atravesar.

Espacio auxiliar : O(1), ya que no estamos utilizando ningún espacio adicional.
 

Publicación traducida automáticamente

Artículo escrito por Striver 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 *