A.当a=1就把a改成14,b=1就把b改成14,然后比较a,b大小即可。

#include <iostream>
#include <algorithm>
#include <cstdio>
using namespace std;
int a, b;
int main()
{cin >> a >> b;if(a==1) a=14; if(b==1) b=14;cout << ((a>b)?"Alice":((a==b)?"Draw":"Bob")) << endl;
}/*
比赛的时候的代码,狠智障地把题读错了。
但居然AC啦! 很迷啊~
#include <iostream>
#include <algorithm>
#include <cstdio>
using namespace std;
const int NICO = 200000 + 10;
int a, b;
int main()
{cin >> a >> b;int ans;if(a > b) ans = 1;if(a < b) ans = 2;if(a ==b) ans = 3;if(a==1&&b==13)ans = 1;if(a==13&&b==1)ans = 2;if(ans == 1) cout << "Alice";if(ans == 2) cout << "Bob";if(ans == 3) cout << "Draw";
}
*/

B. 数据范围这么小~ 直接暴力,用4重循环check,岂不美哉!

#include <iostream>
#include <algorithm>
#include <cstdio>
using namespace std;
const int NICO = 200000 + 10;
int n, m;
char s1[60][60],s2[60][60];
int main()
{cin >> n >> m;for(int i=0;i<n;i++) scanf("%s",s1[i]);for(int i=0;i<m;i++) scanf("%s",s2[i]);int ok = 0;for(int i=0;i<=n-m;i++){for(int j=0;j<=n-m;j++){int ac = 1;for(int a=i;a<i+m;a++){for(int b=j;b<j+m;b++){if(s1[a][b] != s2[a-i][b-j]){ac = 0;}}}if(ac) ok = 1;}}cout << (ok?"Yes":"No") << endl;
}

C.数据范围比较小的TSP,继续暴力!

不过这个dfs写得真心难看!

#include <iostream>
#include <algorithm>
#include <cstdio>
#include <vector>
using namespace std;
const int NICO = 200000 + 10;
vector<int> vec[100];int n, m;
int res = 0, a[10];
void dfs(int used[], int x)
{int ok = 1;used[x] = 1;for(int i=1;i<=n;i++){if(!used[i]) ok = 0;}if(ok) {res ++;return;}for(int i=0;i<vec[x].size();i++){int cur = vec[x][i];if(used[cur]) continue;int b[10];for(int j=1;j<=n;j++) b[j]=used[j];dfs(b, cur);}
}
int main()
{cin >> n >> m;for(int i=1;i<=m;i++){int a, b;cin >> a >> b;vec[a].push_back(b);vec[b].push_back(a);}dfs(a, 1);cout << res << endl;
}

D.活生生的一个背包, ans[i][j][k]: 表示使用前i个物品,凑成j克a物质,k克b物质最小耗费。

ans[i][j][k] = min (ans[i-1][j-a[i]][k-b[i]] + c[i], ans[i-1][j][k]);(初始化:ans[0][0][0]=0,其它为INF)

如果追求简洁の美感,可以把i省略掉,降一下ans数组的维度。

ps:降低维度的时候记得改变j, k的循环方向!喵!喵!喵!

#include <iostream>
#include <algorithm>
#include <cstdio>
#include <vector>
using namespace std;
const int INF = 10000007;
int ans[402][402];
int n, ma, mb;
int a[42],b[42],c[42];
int main()
{for(int i=0;i<=400;i++)for(int j=0;j<=400;j++)ans[i][j] = INF;ans[0][0] = 0;cin >> n >> ma >> mb;for(int i=1;i<=n;i++){cin >> a[i] >> b[i] >> c[i];}for(int i=1;i<=n;i++){for(int j=400;j>=a[i];j--){for(int k=400;k>=b[i];k--){ans[j][k] = min(ans[j][k], ans[j-a[i]][k-b[i]] + c[i]);}}}int res = INF;int A = ma, B = mb;while(A<=400&&B<=400){res = min(res, ans[A][B]);A += ma; B += mb;}if(res == INF) cout << -1 << endl;else cout << res << endl;
}

  

转载于:https://www.cnblogs.com/RUSH-D-CAT/p/6391086.html

AtCoder Beginner Contest 055题解相关推荐

  1. AtCoder Beginner Contest 197 题解(A ~ F)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 目录 A - Rotate B - Visibility C - ORXOR D - Opposite ...

  2. Caddi Programming Contest 2021(AtCoder Beginner Contest 193) 题解

    Caddi Programming Contest 2021(AtCoder Beginner Contest 193) A - Discount 打折浮点数除即可 B - Play Snuke 枚举 ...

  3. Panasonic Programming Contest (AtCoder Beginner Contest 195) 题解

    文章目录 A - Health M Death B - Many Oranges C - Comma D - Shipping Center E - Lucky 7 Battle F - Coprim ...

  4. AtCoder Beginner Contest 096 题解

    比赛地址 https://abc096.contest.atcoder.jp A - Day of Takahashi 题目大意 我们把月和日相同的日期叫做"Takahashi日" ...

  5. freee Programming Contest 2022(AtCoder Beginner Contest 264) 题解 (A~D)

    A - "atcoder".substr() Time Limit: 2 sec / Memory Limit: 1024 MB Score : 100100100 points ...

  6. [2021-09-04 AtCoder Beginner Contest 217] 题解

    文章目录 A - Lexicographic Order B - AtCoder Quiz C - Inverse of Permutation D - Cutting Woods E - Sorti ...

  7. AtCoder Beginner Contest 168题解

    这里写目录标题 A - ∴ (Therefore) 代码 B - ... (Triple Dots) 代码 C - : (Colon) 代码 D - .. (Double Dots) 题意 题解 代码 ...

  8. AtCoder Beginner Contest 153 题解

    题解链接:题解链接 RD是输入,OT是输出 A – SERVAL VS MONSTER 链接: A题 题意: 给你怪物血量H和攻击一次扣A血,问至少要攻击几次能使怪物的血量小于或者等于0 解法: 按题 ...

  9. AtCoder Beginner Contest 177 题解

    希望更好的阅读体验?点这里 一.题解 A.Don't be late 题目大意: 高桥君计划在 TTT 分钟内于离家 DDD 米的地方与青木君碰面,已知高桥君速度为 SSS,问他能否在 TTT 分钟内 ...

最新文章

  1. 【java】java反射机制,动态获取对象的属性和对应的参数值,并属性按照字典序排序,Field.setAccessible()方法的说明【可用于微信支付 签名生成】...
  2. CUDA学习笔记之 CUDA存储器模型
  3. 《算法:C语言实现》—— 第二部分 —— 第3章 —— 基本数据结构
  4. android中给button加图标,Android,如何在我的代码中的TabButton中添加图标
  5. C++之类与对象(2)
  6. 【图像处理】MATLAB:彩色图像处理
  7. 支持 vulkan android,Vulkan 使用入门
  8. HP-UX 11i v2安装使用python 2.5.2
  9. 【人脸识别】基于matlab ksvd字典学习人脸表情识别【含Matlab源码 460期】
  10. 802.x无线认证服务器,无线802.1X认证
  11. 4G基站软件产品测试,基站信号测试软件使用.doc
  12. 写给没时间理财的上班族
  13. UE4导入外部插件方法
  14. MySQL高可用方案MGR+consul组合测试
  15. webpack入门学习笔记10 —— 在项目中使用图片资源
  16. Spring 之AOP AspectJ切入点语法详解(最全了,不需要再去其他地找了)---zhangkaitao
  17. UNR#2 梦中的题面 HDU6056
  18. Flux脚本语言基础使用-函数定义(InFluxDB 查询语言)
  19. web前端期末大作业 HTML+CSS+JavaScript---介绍自己的家乡-宁夏js菜单下拉
  20. 末代帝王微软:戴着PC枷锁跳“移动Style”

热门文章

  1. bootstrap项目实例_SpringCloud Config 使用Git的应用实例
  2. linux 串口驱动 atmel_set_mctrl何时调用,linux uart serial使用驱动分析
  3. python整理数据_Python数据类型整理
  4. datetimepicker 时间不更新_iOS 14.2 正式版推送:新增人体检测,这些功能值得更新...
  5. Python之web开发(四):python使用django框架搭建网站之主页搭建
  6. 【知识星球】剪枝量化初完结,蒸馏学习又上线
  7. 全球及中国皮肤癌药物行业深度研究及项目可行性调研报告2022-2027年
  8. 中国碳纤维风电叶片行业“十四五”发展规划及投资可行性分析报告2022-2028年版
  9. 如何制作cab包(解决不能注册的问题)
  10. 克隆 Linux系统盘,linux系统克隆系统盘