求1+2+...+n的算法

题目描述:

求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。

输入:

输入可能包含多个测试样例。对于每个测试案例,输入为一个整数n(1<= n<=100000)。

输出:

对应每个测试案例,输出1+2+3+…+n的值。

样例输入:

3
5
  

样例输出:

6
15

这道题目确实很无聊,试着用java语言,构造方法来写,最后实在没办法,还是要用for,构造了对象数组是不假,但是那个人家调用的是创建数组引用对象的构造函数,还要实例化数组中的对象n次才行,又逼着我用for循环,这也罢了,测试结果超时了,关键是每个测试用例的时间没有超时,但是总时间超时了。

本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/Programming/sjjg/

不想再在这种无聊的题目上浪费时间了,索性这样了,有段时间没用java了,手都生了,另外,用java构造函数思路做本题目,有不用for循环即可计算出答案的,欢迎提示,实在不想去想了!

无论怎样,还是把代码贴上吧!

import java.util.*;
public class Main{
    public static void main(String args[]) {
        Scanner cin = new Scanner(System.in);
        int n;
        while (cin.hasNext()) {
            n = cin.nextInt();
            Temp.Reset();
            Temp arr[] = new Temp[n];
            for(int i=0;i<n;i++)
                arr[i] = new Temp();
            System.out.println(Temp.getSum());
        }
    }
}  

class Temp{
    private static int n = 0;
    private static int sum = 0;
    public static void Reset(){
        n = 0;
        sum = 0;
    }
    public Temp(){
        ++n;
        sum += n;
    }
    public static int getSum(){
        return sum;
    }
}

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索算法
, 关键字
, 输入
, 语句
, 题目
整数
递归算法求n的阶乘、递归算法求x的n次方、高精度算法 求n的阶乘、递归算法求出n的阶乘、求解0 1规划算法,以便于您获取更多的相关知识。

时间: 2024-09-28 02:29:22

求1+2+...+n的算法的相关文章

求按百分比抽取数据算法

问题描述 求按百分比抽取数据算法 我有个需求 要求用百分比抽取数据以达到数据审阅的目的 我做了一个简单的程序但达不到要求 <?php header('Content-Type: text/html; charset=utf-8'); //抽取算法 for($kou=1;$kou<=100;$kou++){ $kou_count=0; for($i=1;$i<=100;$i++){ $key=($i)%(100/$kou); if( intval( $key ) == 0){ //echo

求一个数学难题的算法

问题描述 求一个数学难题的算法 F0=1000F1=F0*a-30;F2=F1*a-30;F3=F2*a-30;... ....Fn-1=Fn-2*a-30Fn=Fn-1*a-30 Fn=0;输入n;输出a 解决方案 #include <stdio.h>int n;double a;double fun(int tInputValue){ if(tInputValue == 0) return 1000.0; else return fun(tInputValue-1)*a-30;}int m

编程题-求大神破解一个算法,手机号转为6位数的16进制的数好像是!!

问题描述 求大神破解一个算法,手机号转为6位数的16进制的数好像是!! 输入 -------------------------**输出** 18019617815-------------C90381 18012509150-------------32ECB9 18120150106@njxy-----CC6AAF 18120150151@njxy-----F2F3F6 求大神能看出来这是什么算法,怎么计算的

想要深入学习编程,求推荐语言-目的是算法实现和数据分析

问题描述 想要深入学习编程,求推荐语言-目的是算法实现和数据分析 目前懂得Python, Vb.Net, R的基本知识,并稍微懂得一些C# 实验室大概要向数据处理方面靠一靠,主要涉及的是地理数据库(关系数据库) 最基本需要是实现功能,例如spatial data clusering啊,定制的决策树啊一类的,也有可能涉及到批处理和其他的底层地理数据库处理. 以后可能有一定图形界面的需求. 我应该主要深入学习哪一门语言比较合适我的需求? 或者有什么其他的语言推荐吗 解决方案 推荐python,现在p

数据库-急求考勤循环排班算法

问题描述 急求考勤循环排班算法 给出一个循环周期的班次排班方案,如何按这个循环周期自动生成每一天的排班方案,数据库该如何设计,具体算法如何 解决方案 http://course.baidu.com/view/d125315e312b3169a451a4f1.html 解决方案二: 考勤排班算法和计算方式 http://jhnc.blog.163.com/blog/static/1365378200856112854897/ 解决方案三: oa系统设计---考勤系统算法 上网搜索了一下,大家基本上

多线程-跪求大神,编写算法实现并发进程的模拟

问题描述 跪求大神,编写算法实现并发进程的模拟 一.实验目的 1. 了解进程的原因执行顺序,以及并发进程的运行次序 2. 进一步深刻理解操作系统在多进程(线程)执行中的作用 二.实验内容 1. 实现并发进程的程序模拟 2. 可以多线程编程代替并发进程 三.实验要求 1. 实现多进程(线程)程序编码,程序须要体现出多线程的并发执行的特征:运行结果无序.不可重现 2. 在上述基础上,考虑为多线程设置同步机制,程序须要体现出同步多线程的特点,即运行结果的可再现性 四.实验提示 1. 多线程运算结果的不

求指点-求推荐:c,C++,算法,数据结构,编写简单游戏等方面的书籍。

问题描述 求推荐:c,C++,算法,数据结构,编写简单游戏等方面的书籍. 我是大一的,刚刚学完谭浩强的C,现在正在学开始谭浩强的C++.希望大家能够给一些建议:推荐一些书籍.谢谢 解决方案 说实话不推荐学习谭浩强的那两本书,别问为什么,因为你如果刚学的话,体会不到我说的,但是如果已经看完了,其实如果你只看了他的书的话,估计你啥也做不了,常见的C语言小程序,列入俄罗斯方块,贪吃蛇,扫雷,等等这些,不过提醒你,我给你你个关键词:1.函数 2.指针 3.链表 4.函数指针 5.数组 6.结构体 指针数

c语言-求大神来看看我的算法有没有可行性,最好能给点建议

问题描述 求大神来看看我的算法有没有可行性,最好能给点建议 读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式:每个测试输入包含1个测试用例,即给出自然数n的值.这里保证n小于10^100. 输出格式:在一行内输出n的各位数字之和的每一位,拼音数字间有1 空格,但一行中最后一个拼音数字后没有空格. 输入样例: 1234567890987654321123456789 输出样例:yi san w 我的代码如下: #include<stdio.h> #include&l

安卓后端-求Java高效合理排序算法

问题描述 求Java高效合理排序算法 安卓界面列表可任意拖拽变换列表数据顺序,保存数据在后端服务,怎样在后端实现排序,求各路高手指点,确切的方案也可以,大概思路方向也可以,希望大家不吝赐教,先谢过 解决方案 这个在排序的时候加上一个orderid,当你页面上改变位置的时候,就更新orderid发回去. 这个链接的前端可以借鉴http://www.cnblogs.com/breakdown/archive/2012/03/29/2423091.html

求高考录取率的解决算法

问题描述 求高考录取率的解决算法 研究高校推荐模块的时候遇到了难题,基于各校的历年录取分数的波动及之前关注该校的学生人数和考生分数.位次出发,结合考生兴趣偏好,通过将存在价值差别的原始分数转换为可比的标准分数计算录取率,基此推荐合适的学校列表. 其中的难点就是录取率的计算. 为使不同年度的成绩之间可以进行直接的比较和累加,首先要将价值不同的原始分数进行标准化处理,考虑使用Z-Scores方法对每年考试成绩分别进行标准化处理,为了直观和使用方便,考虑采用CEEB分数进行线性变换:CEEB分数=z*