zoukankan      html  css  js  c++  java
  • Codeforces Round #257 (Div. 2)

    C这题说的是给了一个 矩形然后可以在矩形中切来切去 问最后那个最小块的最大面积 可以推出公式 (n/(x+1))*(m/(y+1)) x y 分别是横切个纵切的刀数, 可以通过解二元函数算出极值 ,须要取整比赛的时候就把这种方法给去掉了 悲 活该绿名

    #include <iostream>
    #include <cstdio>
    #include <string.h>
    using namespace std;
    __int64 n,m,k;
    __int64 maxv(__int64 a, __int64 b)
    {
          return a>b?a:b;
    }
    __int64 minv(__int64 a,__int64 b)
    {
          return a>b?b:a;
    }
    int main()
    {
           while(scanf("%I64d%I64d%I64d",&n,&m,&k)==3)
           {
                __int64 L = maxv(0,k-m+1);
                __int64 R = minv(k,n-1);
                if(k==0){
                     printf("%I64d
    ",n*m); continue;
                }
                if(k>n+m-2){
                     printf("-1
    "); continue;
                }
                __int64 a = (n/(L+1))*(m/(k-L+1));
                __int64 b = (n/(R+1))*(m/(k-R+1));
                a =maxv(a,b);
                printf("%I64d
    ",a);
           }
           return 0;
    }
    复制代码
    View Code
  • 相关阅读:
    加油站
    UIScrollView控件实现图片轮播
    键值编码 KVC
    键值观察 KVO
    弹出视图集合
    关于Page翻页效果, PageViewConrtoller
    Event Handling Guide for iOS--事件驱动指南
    远程控制
    耳机线控
    ASI框架的使用
  • 原文地址:https://www.cnblogs.com/Opaser/p/3855948.html
Copyright © 2011-2022 走看看