数学 poj 3911(Internet Service Providers)

来源:互联网 发布:js拖拽事件绑定数据 编辑:程序博客网 时间:2024/05/16 09:35

Internet Service Providers

Description

A group of N Internet Service Provider companies (ISPs) use a private communication channel that has a maximum capacity of C traffic units per second. Each company transfers T traffic units per second through the channel and gets a profit that is directly proportional to the factor T(C - TN). The problem is to compute T_optim, the smallest value of T that maximizes the total profit the N ISPs can get from using the channel. Notice that N, C, T, and T_optim are integer numbers.

Input

Each data set corresponds to an instance of the problem above and contains two integral numbers – N and C – with values in the range from 0 to 109. The input data are separated by white spaces, are correct, and terminate with an end of file.

Output

For each data set the program computes the value of T_optim according to the problem instance that corresponds to the data set. The result is printed on the standard output from the beginning of a line. There must be no empty lines on the output.

Sample Input

1 0 0 1 4 3 2 8 3 27 25 1000000000

Sample Output

0 0 0 2 4 20000000

题解:解一元二次方程。

#include<cstdio>using namespace std;int main(){    long long N,C,s1,s;while (scanf ("%lld %lld",&N,&C)!=EOF){if (N==0) printf ("0\n");else{s1=C/(2*N);s=s1+1;if (s1*(C-s1*N)>=s*(C-N*s))printf ("%lld\n",s1);else printf ("%lld\n",s);}}return 0;} 


0 0
原创粉丝点击