原题:

http://172.16.0.132/senior/#contest/problems/1895

题目描述:

尤里背叛了苏维埃联盟!
尤里具有心灵控制的能力,可以控制我方的士兵攻击同伴。为了避免这种情况,斯大林同志要求你合理地排兵布阵,使得没有两个士兵可以互相攻击。
在这个问题里,你可以认为士兵的攻击范围类似于国际象棋中的马。也即,位置为(x,y)的士兵可以攻击位置为(x±2,y±1)或(x±1,y±2)的士兵。请计算:在N*M 的棋盘上最多能放置多少个士兵。(当然,两个士兵不能在同一个位置)

输入:

第一行,一个整数T,描述了子测试点的组数。
以下T 行,每行两个整数N,M,描述了一个棋盘。

输出:

对于每个子测试点,输出一行,一个整数,为所求的答案。

样例输入:

2
1 5
2 3

样例输出:

5
4

数据范围限制:

对于20%的数据:N*M≤15。
对于100%的数据:1≤T≤1000,1≤N,M≤10^9。
均匀地,对于总计50%的数据:数据随机生成。
输出规模不是很大,因此cout 大法好。

分析:

对于这道题,我们可以找规律;
定义:

对于n=2,我们发现ans=f(n);
对于m=2,我们发现ans=f(m);
对于m=1||n=1,ans=n*m;
对于其他的,ans=(n*m+1)/2;

实现:

#include<iostream>
#include<cstdio>
using namespace std;  int a[20][20],t;
long long n,m;
long long f(long long x)
{  if(x%4==0) return x;  if(x%4==1) return x+1;  if(x%4==2) return x+2;  if(x%4==3) return x+1;
}
int main()
{    scanf("%d",&t);while(t--){  scanf("%lld%lld",&n,&m);if(n==2){  printf("%lld\n",f(m));continue;  }  if(m==2){  printf("%lld\n",f(n)); continue;  }  if(n==1||m==1) printf("%lld\n",n*m);else printf("%lld\n",(n*m+1)/2);}
}  

2017.1.14【初中部 GDKOI】模拟赛B组 心灵终结 题解相关推荐

  1. 2017.10.07【NOIP提高组】模拟赛B组 瑰丽华尔兹 题解

    传送门 Description 你跳过华尔兹吗?当音乐响起,当你随着旋律滑动舞步,是不是有一种漫步仙境的惬意? 众所周知,跳华尔兹时,最重要的是有好的音乐.但是很少有几个人知道,世界上最伟大的钢琴家一 ...

  2. GMOJ - 2021.07.20【普及组】模拟赛C组 - 排座椅(seat)、传球游戏(ball)、立体图(drawing)、间谍派遣、seek

    文章目录 luogu博客链接 GMOJ - 2021.07.20[普及组]模拟赛C组 - 排座椅(seat).传球游戏(ball).立体图(drawing).间谍派遣.seek T1 排座椅(seat ...

  3. 第十二届蓝桥杯(2021年)模拟赛 Python组(第一期) 题目+个人解答

    填空题 填空题-1 [问题描述] 如東整数a是整数b的整数倍,则称b是a的约数. 请问,有多少个正整数是2020的约数. [答案提交] 这是一道结果填空的题,你只需要算出结果后提交即可.本题的结果为一 ...

  4. JZOJ(中山纪念中学) 2018.02.02【NOIP普及组】模拟赛D组

    本次题目:2018.02.02[NOIP普及组]模拟赛D组 第一题 题目:第一题 公牛数字 题意: 求题目给出两个数字的乘积 分析: 这题明显只是考察学生的高精可我居然没做对,只要多练习几次,即可AC ...

  5. 2021.08.09【普及组】模拟赛C组比赛总结

    文章目录 2021.08.09[普及组]模拟赛C组比赛总结 写在前面: T1 :[普及模拟]生产武器 题目大意: 正解: T2 :[普及模拟]城市连接 题目大意: 正解: T3 :[普及模拟]抢救文件 ...

  6. 2021-07-17【普及组】模拟赛C组

    文章目录 2021.07.17[普及组]模拟赛C组 写在前面: T1: 题目大意: 正解: T2: 题目大意: 正解: T3: 题目大意: 正解: T4: 题目大意: 正解: 2021.07.17[普 ...

  7. 2021-07-15 【普及组】模拟赛C组总结

    文章目录 [普及组]模拟赛C组 写在前面: T1: 题目大意: 正解: T2: 题目大意: 正解: T3: 题目大意: 正解: T4: 题目大意: 正解: [普及组]模拟赛C组 写在前面: 今天的考试 ...

  8. 2021-07-16 【普及组】模拟赛C组

    文章目录 2021.07.16[普及组]模拟赛C组 写在前面: T1: 题目大意: 正解: T2: 题目大意: 正解: T3: 题目大意: 正解: T4: 题目大意: 正解: 2021.07.16[普 ...

  9. 2021.07.16【普及组】模拟赛C组

    2021.07.16[普及组]模拟赛C组 文章目录 2021.07.16[普及组]模拟赛C组 前言 花生采摘 题目 解析 代码 FBI树 题目 解析 代码 火星人 题目 解析 代码 麦森数 题目 解析 ...

最新文章

  1. 英飞凌AI电磁越野组浅析
  2. 开启大数据时代谷歌三篇论文-Mapreduce
  3. pom项目install报错没有自己_SAP财务凭证报错:没有项目种类分配到科目
  4. 豆瓣9.0,35万读者“搜不到信息”的神秘作者,我们帮你找到了
  5. Linux 编译时查找错误字符,编译Linux内核时出现“fatal error: linux/netfilter/xt_dscp: No such file or directory”...
  6. Python基础--04
  7. 编码转换的php小脚本,php编码转换小例子
  8. RH850 问题及解决方案
  9. 通过云服务器实现淘宝京东抢拍器
  10. Python functools模块之cmp_to_key
  11. [转] 彼得林奇:最珍贵的成长股投资精髓
  12. MiniCMS - 吐槽
  13. 陆奇也不能免AIGC这个「俗」
  14. Windows Server 2012 IPAM实战
  15. 【MySQL基础知识】查询、过滤数据关键字
  16. MATLAB时间控制函数
  17. 损失惨重!数据中心失火,360万个网站下线,Rust游戏25台服务器数据永久丢失...
  18. 【Mybatisplus】创建spring boot工程QueryWrapper的使用
  19. 数据可视化设计经验分享:10分钟做出炫酷数据大屏
  20. 实训——智慧养老之画布1

热门文章

  1. 13_linux笔记-shell文本处理命令
  2. 《华为数据之道》总结
  3. android自定义TextView添加虚线下划线
  4. 你知道在 scrapy 中,可以定制化导出数据格式吗?scrapy 导出器学习
  5. 判断字符是否为字母c语言,C程序检查字符是否为字母
  6. 亚马逊激光产品认证,亚马逊激光产品做什么认证,激光产品没做认证被下架了?亚马逊FDA 21CFR1040.1的激光测试报告,亚马逊IEC60825-1测试报告,激光等级分类
  7. endnote出现库已损坏的解决办法
  8. Flutter 又一元老离职,感谢 Tim 这些年的付出
  9. 曲柄滑块机构运动分析和参数优化
  10. rtl8192 调试