[ZOJ 3076] Break Standard Weight
题目连接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5009
题意:给你两个数字,可以把其中一个拆成两个数字,计算这三个数字通过加或者减能组成的最多数字。
分析下三个数通过加或者减的组合以及数据规模来看,直接暴力枚举即可,枚举过程中注意不要有遗漏,最好在心里记个顺序,有条理进行枚举。
反思:当遇到数据规模不大的情况,想不出快捷方法,尝试用暴力试试。
AC代码:
#include <cstdio>
#include <set>
#include <cmath>
using namespace std;
int test;
int n, m;
int maxn;
int solve(int a, int b, int c) {
set<int> s;
s.insert(a);
s.insert(b);
s.insert(c);
s.insert(a + b);
s.insert(a + c);
s.insert(b + c);
s.insert(abs(a - b));
s.insert(abs(a - c));
s.insert(abs(b - c));
s.insert(a + b + c);
s.insert(abs(a + b - c));
s.insert(abs(a + c - b));
s.insert(abs(b + c - a));
s.insert(abs(a - b - c));
int len = s.size();
set<int>::iterator it = s.begin();
if(*it == 0)
len--;
return len;
}
int main() {
scanf("%d", &test);
while(test--) {
scanf("%d%d", &n, &m);
maxn = -1;
for(int i = 1; i <= n / 2; i++) {
int len = solve(i, n - i, m);
if(len > maxn)
maxn = len;
}
for(int j = 1; j <= m / 2; j++) {
int len = solve(j, m - j, n);
if(len > maxn)
maxn = len;
}
printf("%d\n", maxn);
}
return 0;
}
[ZOJ 3076] Break Standard Weight的更多相关文章
- zoj 3706 Break Standard Weight(dp)
Break Standard Weight Time Limit: 2 Seconds Memory Limit: 65536 ...
- [ACM_水题] ZOJ 3706 [Break Standard Weight 砝码拆分,可称质量种类,暴力]
The balance was the first mass measuring instrument invented. In its traditional form, it consists o ...
- zoj 3706 Break Standard Weight
/*题意:将两个砝码中的其中一个分成两块,三块组合最多有几种情况(可以只有一块,或者两块). 组合情况 i j m 三块砝码 (i+j)-m=m-(i+j) i+j i-j=j-i i j m (i ...
- ZOJ 3706 Break Standard Weight 解题报告
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5009 题目意思:给出两个mass:x 和 y,问如何将其中一个 ma ...
- Break Standard Weight (ZOJ 3706)
Problem The balance was the first mass measuring instrument invented. In its traditional form, it co ...
- HZNU Training 2 for Zhejiang Provincial Collegiate Programming Contest 2019
赛后总结: T:今天下午参加了答辩比赛,没有给予队友很大的帮助.远程做题的时候发现队友在H上遇到了挫折,然后我就和她们说我看H吧,她们就开始做了另外两道题.今天一人一道题.最后我们在研究一道dp的时候 ...
- The 10th Zhejiang Provincial Collegiate Programming Contest
Applications http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5008 string set 专场 #include& ...
- 2012-2014 三年浙江 acm 省赛 题目 分类
The 9th Zhejiang Provincial Collegiate Programming Contest A Taxi Fare 25.57% (166/649) (水 ...
- ZCMU训练赛-B(dp/暴力)
B - Break Standard Weight The balance was the first mass measuring instrument invented. In its tradi ...
随机推荐
- Java 8 新特性之 Stream 流基础体验
Java 8 新特性之 Stream 流基础体验 package com.company; import java.util.ArrayList; import java.util.List; imp ...
- RobotFramework的安装
Robot Framework自动化测试框架+可视化编辑工具RIDE+Selenium2这是规范的webAPI. 一通过下载安装包安装 1)RF 框架是基于 Python 语言的,所以一定要有 Pyt ...
- Dell 12V/18A电源适配器接口改造
手头有几个航模用的充电器,原来一直用实验室电源,不方便移动,为了便携省地方,就想配个合适的电源.在网上找了下,航模专用的适配器价格太高,国产的杂牌适配器功率虚标严重并且可靠性是个问题,工业用的电源基本 ...
- Mysql安装后在服务里找不到和服务启动不起来的解决方法
一,在安装完Mysql数据库后,发现在控制面板->管理->服务中找不到Mysql的服务启动 解决方法如下:开启命令行,按照如下步骤即可: 1.进入到mysql的安装包,在bin里执行:my ...
- 【VS开发】ATL辅助COM组件开发
有些时候在程序的编写过程中我们会跨语言写一些东西,比如在C#中使用到C++,这个时候COM的出现就很好的解决了这一问题,我们如何来创建并且编写COM组件呢? 一.首先:创建一个ATL项目,如下图所示: ...
- 深入理解C语言-二级指针三种内存模型
二级指针相对于一级指针,显得更难,难在于指针和数组的混合,定义不同类型的二级指针,在使用的时候有着很大的区别 第一种内存模型char *arr[] 若有如下定义 char *arr[] = {&quo ...
- 查看vue-cli3的webpack的配置信息
参考链接:https://www.cnblogs.com/cag2050/p/10523096.html
- Prometheus + Grafana 监控 Redis
Prometheus安装 .linux-amd64.tar.gz .linux-amd64. cd /prometheus # Start Prometheus. # By default, Prom ...
- csv文件的读取写法 from Udacity
长版本 import unicodecsv enrollments_filename = 'C:\\Users\\xxxxx\\Desktop\\try.csv' enrollments = [] f ...
- [CF544E]Remembering Strings_状压dp
E. Remembering Strings 题目大意: You have multiset of n strings of the same length, consisting of lowerc ...