zoukankan      html  css  js  c++  java
  • HDU2123 Calculate the formula

    Calculate the formula

    Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
    Total Submission(s): 3836    Accepted Submission(s): 1126


    Problem Description
    You just need to calculate the sum of the formula: 1^2+3^2+5^2+……+ n ^2.
     


    Input
    In each case, there is an odd positive integer n.
     


    Output
    Print the sum. Make sure the sum will not exceed 2^31-1
     


    Sample Input
    3
     


    Sample Output
    10
     
      这题首先是测出了他到2 ^31-1时N是多少。2344就溢出了,只要算到2343即可。  噼里啪啦敲完了,可是排名实在靠后,输入外挂,对,这时好东西。但是这题又有点不好处理 ,那就是出入数据是要来判定是否已经读到文件结尾,熟悉了scanf这个函数可以用 == EOF来判定是否结束,其实getchar也能够用来判定是否结尾。。。
      代码如下:
     1 #include <cstdio>
    2 #include <cstring>
    3 #include <cstdlib>
    4 using namespace std;
    5
    6 int rec[2345];
    7
    8 bool getint( int &t )
    9 {
    10 char c;
    11 while( c = getchar(), c < '0' || c > '9' )
    12 {
    13 if( c == EOF )
    14 return false;
    15 }
    16 t = c - '0';
    17 while( c = getchar(), c >= '0' && c <= '9' )
    18 t = t * 10 + c - '0';
    19 return true;
    20 }
    21
    22 int main()
    23 {
    24 rec[1] = 1;
    25 for( int i = 3; i <= 2343; i += 2 )
    26 {
    27 rec[i] = rec[i-2] + i * i;
    28 }
    29 int N;
    30 while( getint( N ) )
    31 {
    32 printf( "%d\n", rec[N] );
    33 }
    34 return 0;
    35 }

      

  • 相关阅读:
    Code-Helper:RegexHelper.cs
    Code-Convert:Image to base64
    un-System.Reflection.IReflect.cs
    System.Reflection.AssemblyName.cs
    System.Reflection.ConstructorInfo.cs
    System.Attribute.cs
    ERROR<53761>
    /dev/null 文件
    linux telnet服务安装与配置
    linux定时任务2-at命令
  • 原文地址:https://www.cnblogs.com/Lyush/p/2158822.html
Copyright © 2011-2022 走看看