zoukankan      html  css  js  c++  java
  • UVA 10970 Big Chocolate

    UVA_10970

        假设上面就是我们要切的巧克力,橙色的边表示切痕,而且是只有橙色边的位置才会有切痕,如果每条短边都视作一刀的话,那么上面那个巧克力显然要切17刀,这也是最坏的情况了,那么刀数为什么可以比17刀少呢?我们不妨观察红点的位置,如果左右刀痕连在了一起那么可以少一刀,同理如果上下刀痕连一起,也可以少一刀,但是上下和左右的刀痕不能同时连一起。那么也就是说如果有一个红色的这样的点,那么就可以使上下刀痕连一起,或者左右刀痕连一起,从而减少一刀,那么一共有6个这样的点,就可以减少6刀,所以最优就是11刀。

        (我的程序是先假设横着切了N-1刀,然后再竖着切(M - 1) * N刀。)

    #include<stdio.h>
    #include<string.h>
    int main()
    {
        int n, m;
        while(scanf("%d%d", &n, &m) == 2)
            printf("%d\n", n - 1 + (m - 1) * n);
        return 0;
    }

     

  • 相关阅读:
    【转】java线程池ThreadPoolExecutor使用介绍
    java的类加载机制
    java面试问题分类
    ConcurrentHashMap总结
    ffmpeg对视频封装和分离
    SSM的整合
    单例模式的七种写法
    SecureCRT的快捷键
    linux下mysql常用命令
    maven操作
  • 原文地址:https://www.cnblogs.com/staginner/p/2760249.html
Copyright © 2011-2022 走看看