zoukankan      html  css  js  c++  java
  • 2014.8.4我出的模拟赛【NTR酋长】

    NTR酋长

    (ntr.pas/.c/.cpp)

    黄巨大终于如愿以偿的进入了czy的后宫中……但是czy很生气……他要在黄巨大走到他面前的必经之路上放上几个NTR酋长来阻挡黄巨大。

    众所周知,NTR酋长有一个技能是沟壑(F)。它会在地图上产生一条长长的障碍物阻挡人前进。Czy打算在一个n*m的矩形(必经之路?)中放上NTR酋长。NTR酋长要一个一个放下去,而且每放一个都会向四角倾斜的方向放出无限长的沟壑,而已经被沟壑挡住的地方就不能再放NTR酋长了。

    请注意:不会出现沟壑的路径挡住另一个沟壑的情况:

     

    应该是这样的

     

    那么给定n、m,求最多放多少个NTR酋长。

    样例输入1:

    2 2

    样例输出1:

    2

    样例输入2:

    4 4

    样例输出2:

    6

    数据范围:

    对于24%数据,n,m<=5

    对于50%数据,n,m<=20

    对于70%数据,n,m<=1000

    对于100%数据,n,m<=10^9

    对于100%数据,n==m


    注意最后一行……n=m

    结论题啊

    原来我以为随便什么矩形都行,结果只有正方形才有

    对于n*n的正方形,最多放2n-2个国际象棋的主教

    比如对于3*3的棋盘,我们这样编号

    123

    234

    345

    一共2n-1个编号

    同号的位置中最多只能放一个主教

    因为是正方形,所以存在1、5不能同时存在的情况

    所以2n-2

    n=1的情况要记得特判

    #include<cstdio>
    int a,b;
    int calc(int a,int b)
    {
    	if(a==1&&b==1)return 1;
    	if (a==b)return a+b-2;
    }
    int main()
    {
    	freopen("ntr.in","r",stdin);
    	freopen("ntr.out","w",stdout);
    	scanf("%d%d",&a,&b);
    	printf("%d
    ",calc(a,b));
    }
    

     

    ——by zhber,转载请注明来源
  • 相关阅读:
    Linux内核驱动--硬件访问I/O【原创】
    Linux内核驱动--mmap设备方法【原创】
    Linux系统调用的运行过程【转】
    蓝牙Bluetooth技术手册规范下载【转】
    FarBox--另类有趣的网站服务【转】
    蓝牙HID协议笔记【转】
    linux 串口0x03,0x13的问题【转】
    CC254x/CC2540/CC2541库函数速查(转)
    BLE获取iphone mac地址的方法--【原创】
    用secureCRT操作ubuntu终端
  • 原文地址:https://www.cnblogs.com/zhber/p/4036011.html
Copyright © 2011-2022 走看看