p2056_推倒公式.cpp

来自「高手写的所有acm例程 在acm.zju.edu.cn 上的题目的例程」· C++ 代码 · 共 24 行

CPP
24
字号
#include <stdio.h>
#include <math.h>

int      N;
double   High;

double   Ans ()
{
         int T = int (( 1 + sqrt ( 1 + 4 * High ) ) / 2 + 1e-10 );
         if ( T + 1 >= N ) return 0;
         double Last = ( High - (double) T * ( T - 1 ) ) / T;
         return (double) ( N - T - 1 ) * ( N - T - Last );
}

main ()
{
     int total;
     for ( scanf ( "%d" , &total ); total; total -- ) {
         scanf ( "%d%lf" , &N , &High );
         printf ( "%.2lf\n" , Ans () );
         if ( total > 1 ) printf ( "\n" );
     }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?