题目:
  给你一块M*N的巧克力,问把它切成最小单元需要最少切几刀,分开的就不能一起切了.

分析:
  每次切割只能多产生一个部分,分成M*N个部分,必然要切M*N-1刀.

  一个长为m宽为n的长方形和m*n个单位为1的正方形的面积相等,可知一个长方形变成m*n个正方形,面积是一直没变,

  所以可以不用考虑面积对结果的影响,只需考虑刀数的影响;

  切一刀一个就变两个,所以一个长方形变成m*n个正方形(边长为1)至少需要切m*n-1刀

代码如下:

 #include <iostream>
#include <cstdio>
#include <cstring>
#include <fstream>
#include <cmath>
#include <ctime>
#include <cstdlib>
#include <algorithm>
#include <set>
#include <map>
#include <list>
#include <stack>
#include <queue>
#include <iterator>
#include <vector> using namespace std; #define LL long long
#define MOD 1000000007
#define INF 0x3f3f3f3f
#define MAXN 10000010
#define MAXM 1000010 int main()
{
int n, m;
while(scanf("%d%d", &n, &m)!= EOF&&n&&m)
{
printf("%d\n", n*m-);
} return ;
}

UVA 10970-Big Chocolate的更多相关文章

  1. 贪心水题。UVA 11636 Hello World,LA 3602 DNA Consensus String,UVA 10970 Big Chocolate,UVA 10340 All in All,UVA 11039 Building Designing

    UVA 11636 Hello World 二的幂答案就是二进制长度减1,不是二的幂答案就是是二进制长度. #include<cstdio> int main() { ; ){ ; ) r ...

  2. UVa 10970 - Big Chocolate 水题 难度: 0

    题目 https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&a ...

  3. UVa 10970 Big Chocolate (想一下就AC了)

    题意:给你一个m*n的巧克力,让人把它切成1*1的,但是每次只能切一下,问要切多少刀. 析:简单啊,我就不明白了 怎么那么多人TLE了,不会当DP做了吧,其实不用的. 假设有一个1*m的巧克力,很明显 ...

  4. UVA 10970 - Big Chocolate 洪水@。@

    先横着切m-1刀,矩形巧克力就变成了1*n (有m个)然后每个都要切n-1下,所以有 m*(n-1) +(m-1)= n*m-1 #include<cstdio> int main() { ...

  5. UVA 10970 第一次比赛 D题 (后面才补的)

    Mohammad has recently visited Switzerland. As heloves his friends very much, he decided to buy somec ...

  6. UVa 1009 Sharing Chocolate (数位dp)

    题目链接: https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_proble ...

  7. 10970 - Big Chocolate

    题意 :已知n*m的巧克力,问需要掰多少次能让巧克力成为最小的一块: #include<iostream> using namespace std; int main() { int n, ...

  8. UVa 10970 大块巧克力

    https://vjudge.net/problem/UVA-10970 题意: 把一个m行n列的矩形巧克力切成mn个1×1的方块,需要切几刀. 思路: 可以考虑用动态规划的方法去做,当然,最简单的是 ...

  9. UVA题目分类

    题目 Volume 0. Getting Started 开始10055 - Hashmat the Brave Warrior 10071 - Back to High School Physics ...

  10. Zerojudge解题经验交流

    题号:a001: 哈囉 背景知识:输出语句,while not eof 题号:a002: 簡易加法 背景知识:输出语句,while not eof,加法运算 题号:a003: 兩光法師占卜術 背景知识 ...

随机推荐

  1. Android aidl Binder框架浅析

      转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38461079 ,本文出自[张鸿洋的博客] 1.概述 Binder能干什么?B ...

  2. 【服务器环境搭建-Centos】Nginx1.9.9 配置启用 --待续

    1.worker_processes worker_processes 4;## 4核,所以设置4个 worker_cpu_affinity 0001 0010 0100 1000; nginx在启动 ...

  3. HTML JSP Servlet 的 相对路径 绝对路径

    HTML 相对路径 - 没有最前面的 /: 相对于当前文件,和OS一样 绝对路径 - 前面带 / : 相对于  http://<host>:port/ Servlet 相对路径 - 相对于 ...

  4. phalcon: 视图分层渲染,或包含其他页面

    一:视图分层显现: 比如:在一个页面中,头部.底部固定不变,只有中间部分随操作变换显示.那么可以将中间部分切出来,剩余部分用作固定框架,放入:app/views/layouts目录中,起名为:base ...

  5. jquery 全选功能

    1.直接全选(复选框名字要统一) <input type="CHECKBOX" id="cbSelectAll" onclick="$('inp ...

  6. linux笔记:linux系统安装-虚拟机网络设置

    vmware虚拟机网络配置的3种方式: 1.桥接:在桥接模式下,VMWare虚拟出来的操作系统就像是局域网中的一台独立的主机(主机和虚拟机处于对等地位),它可以访问网内任何一台机器.在桥接模式下,我们 ...

  7. node环境下处理get post

    前言:今天刚学get,post.这里只是几下今天的理解.so文章只供新手参考. 编译器是webstorm 搭建后服务器后(具体请查看上篇文章) 在routes文件夹下的index.js文件中写入 如图 ...

  8. Ubuntu 14.04 分区方案

    我磁盘大概还有70多G的空间吧,我全部拿来使用的.真实的双系统哦. 一般来讲,linux系统分区最少要包括/和/swap两个.这样据说会影响性能,没有这样安装过,就无从考证啦.其实就是重装系统的时候, ...

  9. javascript常用函数(1):jquery操作select 基本操作

    $(this).children('option:selected').val();//这就是selected的值 $("#charCity").empty();//内容清空: j ...

  10. JS基础--问题记录

    1. {}var a={};{}是一个空的对象,是 new Object();的简写. 2.判断元素是存在 //jQuery 对象中元素的个数.当前匹配的元素个数. size 将返回相同的值. if ...