BestCoder Round 69 Div 2 1001&& 1002 || HDU 5610 && 5611
如果杠铃总质量是奇数直接impossible
接着就考验耐心和仔细周全的考虑了。在WA了三次后终于发现问题了,想对自己说是不是撒
首先最好从大的那个开始考虑,我的方案就是两数交换一下,结果输出的时候没有考虑。。。
然后就是要求a+b最小,那么循环就要从大的开始向小的循环。
其实我也解释不清楚,更解释不清楚的是学长取名的Baby Nero,一直以为铭铭姐是女的的我,在看到真的铭神的照片的时候惊呆了
比赛时候的渣代码:
#include <cstdio>
#include <iostream>
#include <cmath>
#include <cstring>
#include <queue>
#include <vector> using namespace std; int a,b,c;
int sum[][] = {}; int main(){
int T;
scanf("%d",&T);
while(T--){
int cnt = ;
int big_flag = ;
memset(sum,,sizeof(sum));
scanf("%d%d%d",&a,&b,&c);
if(c & ){
printf("Impossible\n");
}
else{
//let b is bigger than a
if(a > b){
int t = a;a = b;b = t;
big_flag = ;
}
for(int i = (c/)/b;i >= ; i --){
if(((c/) - b *i)%a==){
sum[cnt][] = *((c/)-b*i)/a;
sum[cnt][] = *i;
cnt++;
}
}
if(sum[][] == && sum[][]==){
printf("Impossible\n");
}
else{
int flag = ;
int minn = sum[][] + sum[][];
for(int i = ;i < cnt ;i++){
if(minn >= sum[i][]+ sum[i][]){
minn = sum[i][]+ sum[i][];
flag = i;
}
}
if(!big_flag){
printf("%d %d\n",sum[flag][],sum[flag][]);
}
else{
printf("%d %d\n",sum[flag][],sum[flag][]);
}
}
}
} return ;
}
等个明后天把1002题补了。立个FLAG
代码效率不高,速度很慢。主要是在年月日的判断上先判断谁还可以优化一下。但是还算浅显易懂。
#include <cstdio>
#include <iostream>
#include <cmath>
#include <cstring>
#include <queue>
#include <vector> #define rep(i,a,n) for(int i = a;i < n;i++)
#define per(i,a,n) for(int i = n-1;i >=a;i--)
#define pb push_back
#define VI vector<int>
#define QI queue<int> typedef long long ll; using namespace std; int a,b,n;
char ch[] = {};
int num[] = {}; int check(){
int flag = ;
rep(i,,) if(num[i]!=num[i+]) flag = ;
if(flag == ) return ; flag = ;
rep(i,,) if(num[i]!=num[i+]-) flag = ;
if(flag == ) return ; flag = ;
rep(i,,) if(num[i]!=num[i+]+) flag = ;
if(flag == ) return ; /*NOTE:
PHONE NUMBER SAMPLE 138-1997-05-06
012 3456 78 9[10]
*/
int y = num[] * + num[] * + num[] * + num[];
int m = num[] * + num[];
int d = num[] * + num[];
if(y < || y > ){
return ;
}
else{
if(m < || m > ){
return ;
}
else{
if(m == || m == || m == || m == || m == || m == || m == ){
if(d < || d > ){
return ;
}
else{
return ;
}
}
else{
if(m == ){
if((y%==&&y%==)||(y%!=&&y%==)){
if(d < || d > ){
return ;
}
else{
return ;
}
}
else{
if(d < || d > ){
return ;
}
else{
return ;
}
}
}
else{
if(d < || d > ){
return ;
}
else{
return ;
}
}
}
}
}
} int main(){
int T;
scanf("%d",&T);
while(T--){
ll sum = ;
scanf("%d%d%d",&n,&a,&b);
rep(i,,n+){
scanf("%s",ch);
rep(j,,){
num[j] = ch[j] - '';
}
if(check()){
sum += a;
}
else{
sum += b;
}
}
cout<<sum<<endl;
}
return ;
}
剩下的两道真的有空再补,立FLAG
BestCoder Round 69 Div 2 1001&& 1002 || HDU 5610 && 5611的更多相关文章
- BestCoder Round #69 (div.2) Baby Ming and Weight lifting(hdu 5610)
Baby Ming and Weight lifting Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K ( ...
- 判素数+找规律 BestCoder Round #51 (div.2) 1001 Zball in Tina Town
题目传送门 /* 题意: 求(n-1)! mod n 数论:没啥意思,打个表能发现规律,但坑点是4时要特判! */ /***************************************** ...
- BestCoder Round #68 (div.2) tree(hdu 5606)
tree Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submis ...
- BestCoder Round #50 (div.1) 1001 Distribution money (HDU OJ 5364)
题目:Click here 题意:bestcoder上面有中文题目 #include <iostream> #include <cstdio> #include <cst ...
- ACM学习历程—HDU5585 Numbers(数论 || 大数)(BestCoder Round #64 (div.2) 1001)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5585 题目大意就是求大数是否能被2,3,5整除. 我直接上了Java大数,不过可以对末尾来判断2和5, ...
- BestCoder Round #69 (div.2)(hdu5611)
Baby Ming and phone number Time Limit: 3000/1500 MS (Java/Others) Memory Limit: 65536/65536 K (Ja ...
- BestCoder Round #68 (div.2) geometry(hdu 5605)
geometry Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Su ...
- BestCoder Round #81 (div.2)1001
Machine Accepts: 580 Submissions: 1890 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65 ...
- 构造 BestCoder Round #52 (div.2) 1001 Victor and Machine
题目传送门 题意:有中文版的 分析:首先要知道机器关闭后,w是清零的.所以一次(x + y)的循环弹出的小球个数是固定的,为x / w + 1,那么在边界时讨论一下就行了 收获:这种题目不难,理解清楚 ...
随机推荐
- tomcat 快速部署静态文件
server.conf配置: <?xml version='1.0' encoding='utf-8'?> <!-- Licensed to the Apache Software ...
- 常用vim插件的安装、使用和管理
1.Ctags Ctags工具是用来遍历源代码文件生成tags文件,这些tags文件能被编辑器或者其他工具用来快速查找定位源代码中的符号,入变量名,函数名等.比如,tags文件就是Taglist和 ...
- 使用python抓取百度搜索、百度新闻搜索的关键词个数
由于实验的要求,需要统计一系列的字符串通过百度搜索得到的关键词个数,于是使用python写了一个相关的脚本. 在写这个脚本的过程中遇到了很多的问题,下面会一一道来. ps:我并没有系统地学习过pyth ...
- POJ 1144
http://poj.org/problem?id=1144 题意:给你一些点,某些点直接有边,并且是无向边,求有多少个点是割点 割点:就是在图中,去掉一个点,无向图会构成多个子图,这就是割点 Tar ...
- 某互联网后台自动化组合测试框架RF+Sikuli+Python脚本
某互联网后台自动化组合测试框架RF+Sikuli+Python脚本 http://www.jianshu.com/p/b3e204c8651a 字数949 阅读323 评论1 喜欢0 一.**Robo ...
- Windows Server 2012 R2桌面化详细设置图解
一.任务栏左下角启动服务器管理器,然后进行设置. 1.登录不显示服务器管理器 2.本地服务器,看到右边的IE增强的安全配置,如图所示,关闭两项内容.这样就关闭了IE增强安全提示框. 3.“工具”菜单, ...
- 卷积神经网络_(4)_caffe简介
这里大致说一下caffe.caffe是伯里克利大学的贾杨清教授写的一个深度学习框架,使用C++编写的,但同时也提供python和matlab接口:组成部分主要有: (1)Blob:用来存储数据和梯度: ...
- C++处理Json串——jsoncpp库
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,和xml类似,本文主要对VS2008中使用Jsoncpp解析json的方法做一下记录.Jsoncpp是个跨 ...
- 3dmax导出到blend或者vs中
使用3dmax将模型导成obj格式的时候,可以导出材质或者不导出. 1.如果不导出,则按下图不勾选导出材质和创建材质库选项.这样生成的obj是可以直接再blend或者vs中打开的. 2.如果导出,不仅 ...
- 微信公众平台oauth2.0网页授权参考资料
http://www.wangwenxiao.com/weixin/wxgzptoauth2_0wysq_12.html