code for fun

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
Problem Description
Hey, welcome to HDOJ(Hangzhou Dianzi University Online Judge).
In this problem, your task is to calculate SUM(n) = 1 + 2 + 3 + ... + n.
 
Input
The input will consist of a series of integers n, one integer per line.
 
Output
For each case, output SUM(n) in one line, followed by a blank line. You may assume the result will be in the range of 32-bit signed integer.
 
Sample Input
1
100
 
Sample Output
1
 
5050
 
code(java):
import java.util.*;
import java.io.*;

class Main
{
    public static int sum(int n) {
        if(n % 2 == 0) return n/2*(n+1);
        else return (n+1)/2*n;
        
    }
    public static void main(String args[])
    {
        Scanner cin = new Scanner(System.in);
        int n;
        while(cin.hasNextInt()) {
            n = cin.nextInt();
            System.out.println(sum(n));
            System.out.println();
        }
    }
}

code(C):

#include <stdio.h>

int sum(int n)
{
    if(n % 2) 
        return (n + 1) / 2 * n;
    else
        return (n / 2) * (n + 1);
}

int main()
{
    int n;
    while(scanf("%d",&n) != EOF){
        printf("%d\n\n",sum(n));
    }
    return 0;
}

 

posted on 2014-02-26 02:24  xueda120  阅读(553)  评论(0编辑  收藏  举报