zoukankan      html  css  js  c++  java
  • LightOJ 1275: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 - T*N). The problem is to compute 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 the optimal T are integer numbers.

    Input

    Input starts with an integer T (≤ 20), denoting the number of test cases.

    Each case starts with a line containing two integers N and C (0 ≤ N, C ≤ 109).

    Output

    For each case, print the case number and the minimum possible value of T that maximizes the total profit. The result should be an integer.

    Sample Input

    6

    1 0

    0 1

    4 3

    2 8

    3 27

    25 1000000000

    Sample Output

    Case 1: 0

    Case 2: 0

    Case 3: 0

    Case 4: 2

    Case 5: 4

    Case 6: 20000000

    求解一元二次方程    我们知道 -ax^2+bx+c 最大值是在x=  -b/(2a)处取得

    <pre name="code" class="cpp">#include<cstdio>
    int main()
    {
    	long long t,cut=0;
    	scanf("%lld",&t);
    	while(t--)
    	{
    		cut++;
    		long long n,c;
    		scanf("%lld%lld",&n,&c);
    		printf("Case %lld: ",cut);
    		if(n==0)
    		{
    				printf("0
    ");
    		continue;
    		}
    	      long long a=(c/n)/2;//这里结果可能为小数 因为定义为int型结果就只取整数部分  那么结果就不一定是最大了 需要将x向左或右移一位 
    		    long long b=a+1;
    	  	printf("%lld
    ",a*(c-a*n)>=b*(c-b*n)?a:b);
    	}
    	return 0;
     } 


    
    

  • 相关阅读:
    Java 线程之间的通讯,等待唤醒机制
    Java 死锁以及死锁的产生
    2018Java开发面经(持续更新)
    OpenFlow1.3协议wireshark抓包分析
    SDN核心技术剖析和实战指南---读书笔记
    Kafka常用命令
    安装kafka+zk-ui
    flink窗口
    flink架构原理
    安装Flink集群
  • 原文地址:https://www.cnblogs.com/kingjordan/p/12027054.html
Copyright © 2011-2022 走看看