首页 > 试题广场 >

等差数列

[编程题]等差数列
  • 热度指数:175502 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
等差数列 2,5,8,11,14。。。。
(从 2 开始的 3 为公差的等差数列)

输出求等差数列前n项和


数据范围:

输入描述:

输入一个正整数n。



输出描述:

输出一个相加后的整数。

示例1

输入

2

输出

7

说明

2+5=7  
示例2

输入

275

输出

113575

说明

2+5+...+821+824=113575  
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int d = 3, a1 = 2;
        while (sc.hasNextInt()) {
            int n = sc.nextInt();
            int sum = 0;
            for (int i = 0; i < n; i++) {
                sum = sum + (a1 + d * i);
            }
            System.out.println(sum);
        }
        sc.close();
    }
}
发表于 2024-10-30 00:23:06 回复(0)

基本递归

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        System.out.print(sum(2, 3, n));
    }

    public static int sum(int s, int d, int n) {
        if (n == 0) {
            return 0;
        } else {
            return sum(s+d, d, n-1) + s;
        }
    }
}
发表于 2024-10-03 12:10:58 回复(0)
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int m = sc.nextInt();
        long total = 0L;
        while (m > 0) {
            total += 2 + (3 * (--m));
        }
        System.out.println(total);
    }
}

发表于 2024-08-24 16:22:07 回复(0)
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextInt()) { // 注意 while 处理多个 case
            int n = in.nextInt();
            int sum = 0;
            for(int i=1; i<=n; i++){
                sum += (i*3-1);
            }
            System.out.println(sum);
        }
    }
}
发表于 2023-10-25 17:32:33 回复(0)
 /**
     * 等差数列求和  (首项+末项)*项数/2
     * 末项  a1+(n-)*d
     * 公式化简  na1+n*(n-1)*d/2
     */
    public static void  equidistant100(){
        Scanner sc=new Scanner(System.in);
        int n = sc.nextInt();
        sc.close();
        System.out.println(n*2+n*(n-1)*3/2);
    }

发表于 2023-09-18 19:26:39 回复(0)
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
       int n=in.nextInt();
        int x1=2*n+3*n*(n-1)/2;
        System.out.print(x1);
    }
}
有没有可能用求和公式巨快
发表于 2023-06-21 23:04:54 回复(0)
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        int a = in.nextInt();
        int sum = 0;
        for (int j = 1; j <= a; j++) {
            sum += j*3 - 1;
        }
        System.out.println(sum);
    }
}

发表于 2023-06-08 17:06:35 回复(0)
import java.util.*;

import java.math.*;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        Long n=in.nextLong();
        //Sn=a1*n+n(n-1)d/2 
        Long d=3l;
        Long sum=2*n+(n*(n-1)*d)/2;
        System.out.print(sum);
    }
}

发表于 2023-06-07 10:18:33 回复(0)
import java.util.Scanner;
import java.util.Stack;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int sum = 2;
        int temp  = 2;
        for (int i = 1; i < n; i++) {
            temp = temp + 3;
            sum = sum + temp;
        }
        System.out.println(sum);
    }
}
发表于 2023-03-16 15:08:03 回复(0)
import java.util.*;
 
public class Main{
    public static void main(String[] args){
        Scanner sc=new Scanner(System.in);
        int in=sc.nextInt();
        int count=0;
        for(int i=1;i<=in;i++){
            count=count+3*i-1;
        }
        System.out.println(count);
    }
}
发表于 2022-08-04 20:26:12 回复(0)
import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        while(sc.hasNext()){
            int n = sc.nextInt();
            int sum = (3*n+1)*n/2;
            System.out.println(sum);
        }
    }
}

发表于 2022-08-03 16:37:19 回复(0)
import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        while(sc.hasNext()){
            int n = sc.nextInt();
            int Sn = 2*n + (n-1)*n*3/2;//等差数列前N项公式和:Sn=a1*n+[n*(n-1)*d]/2
            System.out.println(Sn);
        }
    }
}

发表于 2022-07-12 15:55:53 回复(0)
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while (sc.hasNext()) {
            int n = sc.nextInt();
            int tailNum = 2 + 3 * (n - 1);
            int sum = (2 + tailNum) * n / 2;
            System.out.println(sum);
        }
    }
}
发表于 2022-07-10 12:08:38 回复(0)
        Scanner scanner = new Scanner(System.in);
        int nextInt = scanner.nextInt();
        System.out.println(nextInt * (2 + (2 + (nextInt - 1) * 3)) / 2);
发表于 2022-06-16 16:21:02 回复(0)
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        int n = sc.nextInt();
        int sum=0;
        
        if(n==1){
            System.out.println(2);
        }else 
            if(n>1){
            for(int a=2;a<=2+3*(n-1);a+=3){
                sum =sum+a;
            }
            System.out.println(sum);
        }
    }
}
发表于 2022-06-14 08:47:47 回复(0)
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/**
 * 等差数列
 */
public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int n = Integer.parseInt(br.readLine());
        int result = 2;
        int sum = result;
        for (int i = 1; i < n; i++) {
            result += 3;
            sum = sum + result;
        }
        System.out.println(sum);
    }
}

发表于 2022-05-09 22:58:04 回复(0)
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while (sc.hasNextInt()) {
            int n = sc.nextInt();
            int count = -1; // 记录当前的值
            int sum = 0; // 记录总和
            for (int i = 0; i < n; i++) {
                count += 3;
                sum += count;
            }
            System.out.println(sum);
        }
    }
}


发表于 2022-04-30 21:00:32 回复(0)
import java.util.Scanner;

public class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int a1 = 2;
        int an = 2 + (n-1) * 3;
        System.out.println(n * (a1 + an) / 2);
    }
}

发表于 2022-04-22 20:40:02 回复(0)

问题信息

难度:
52条回答 28930浏览

热门推荐

通过挑战的用户

查看代码
等差数列