2019/10/13 leetcode周赛

只做出了2题,第三题动态规划根本没思路,菜死了

第三题、掷骰子模拟

 1 int dieSimulator(int n, vector<int>& rollMax) {
 2     vector<vector<vector<int>>> dp(n + 1, vector<vector<int>>(6, vector<int>(16, 0)));
 3     int mod = 7 + 1e9;
 4     for (int i = 0; i < 6; i++)
 5         dp[0][i][1] = 1;
 6     for (int i = 1; i < n; i++)
 7     {
 8         for (int j = 0; j < 6; j++)
 9         {
10             for (int k = 0; k < 6; k++)
11             {
12                 if (j != k)
13                 {
14                     for (int l = 1; l <= rollMax[k]; l++)
15                     {
16                         dp[i][j][1] += dp[i - 1][k][l];
17                         dp[i][j][1] %= mod;
18                     }
19                 }
20                 else
21                 {
22                     for (int l = 1; l < rollMax[k]; l++)
23                     {
24                         dp[i][j][l + 1] += dp[i - 1][k][l];
25                         dp[i][j][l + 1] %= mod;
26                     }
27                 }
28             }
29         }
30     }
31     int res = 0;
32     for (int i = 0; i < 6; i++)
33     {
34         for (int j = 1; j < rollMax[i]; j++)
35         {
36             res += dp[n - 1][i][j];
37             res %= mod;
38         }
39     }
40     return res;
41 }

第二题贪心

 1 vector<vector<int>> queensAttacktheKing(vector<vector<int>>& queens, vector<int>& king) {
 2     vector<int> a = { 0,-1,-1,-1,0,1,1,1 };
 3     vector<int> b = { -1,-1,0,1,1,1,0,-1 };
 4     int kingrow = king[0];
 5     int kingcol = king[1];
 6     vector<vector<int>> res;
 7     for (int i = 0; i < a.size(); i++)
 8     {
 9         for (int j = 1; j <= 8; j++)
10         {
11             bool ok = false;
12             int x = kingrow + a[i]*j;
13             int y = kingcol + b[i]*j;
14             if (x < 0 || x>8 || y < 0 || y>8)
15                 continue;
16             for (int k = 0; k < queens.size(); k++)
17             {
18                 if (x == queens[k][0] && y == queens[k][1])
19                 {
20                     res.push_back(queens[k]);
21                     ok = true;
22                     break;
23                 }
24             }
25             if (ok)
26                 break;
27         }
28     }
29     return res;
30 }

原文地址:https://www.cnblogs.com/zouma/p/11666204.html

时间: 2024-10-08 12:47:39

2019/10/13 leetcode周赛的相关文章

【Leetcode周赛】从contest-121开始。(一般是10个contest写一篇文章)

Contest 121 (题号981-984)(2019年1月27日) 链接:https://leetcode.com/contest/weekly-contest-121 总结:2019年2月22日补充的报告.当时不想写.rank:1093/3924,AC:2/4.还是太慢了. [984]String Without AAA or BBB(第一题 4分)(Greedy, M) 给了两个数字,A 代表 A 个 'A', B 代表 B 个'B' 在字符串里面.返回一个可行的字符串,字符串中包含 A

【Leetcode周赛】从contest-81开始。(一般是10个contest写一篇文章)

Contest 81 (2018年11月8日,周四,凌晨) 链接:https://leetcode.com/contest/weekly-contest-81 比赛情况记录:结果:3/4, ranking: 440/2797.这次题目似乎比较简单,因为我比赛的时候前三题全做出来了(1:12:39),然后第四题有思路,正在写,没写完,比赛完了写完提交也对了. p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica } [821]

复习2014061201:国际金融(10~13)

现行体系的基本内容 v  取消平价和中心汇率,允许会员国自由选择汇率制度,承认浮动汇率制的合法性. v  减弱与消除黄金的货币作用,黄金不再作为各国货币定值的标准:废除黄金官价,官方的黄金交易可按市价交易:取消会员国向IMF缴付黄金的规定. v  SDRs成为主要的储备资产--储备资产多元化. v  增加IMF基金份额,加强IMF对国际清偿能力的监督. v  扩大对发展中国家的资金融通,解决其国际收支问题. 现行体系的特点 浮动汇率长期化. 储备货币多元化,但美元作为关键货币的地位并没结束,美元

10.11 Linux网络相关 10.12 firewalld和netfilter 10.13 netfilter5表5链介绍 10.14 iptables语法

10.11 Linux网络相关 10.12 firewalld和netfilter 10.13 netfilter5表5链介绍 10.14 iptables语法 扩展(selinux了解即可) selinux教程 http://os.51cto.com/art/201209/355490.htm selinux pdf电子书 http://pan.baidu.com/s/1jGGdExK 10.11 linux网络相关 -ifconfig 命令在centos7 是没有的,需要安装yum inst

每周进度及工作量统计——2016.10.06-2016.10.13

项目:词频统计--web支持 项目类型:个人项目 项目完成情况:已完成 项目改进:新项目 项目日期:2016.10.9-2016.10.10 C类别 C内容 S开始时间 E结束时间 I间隔 T净时间 P预计时间 分析 设计  9:12  10:37  55  30  20 学习 查阅资料  10:37  11:46  0  69  30 编码 实现上传  16:03  21:53  127  223  180 优化 改进 9:56 17:41  149  316  120 文档 程序说明,随笔

循环结构程序设计 10.13

<C语言程序设计>实验报告 学 号 160809217 姓 名 李想 专业.班 计科16-2班 学    期 2016-2017 第1学期 指导教师 黄俊莲 吉吉老师 实验地点 C05 机 器 号 时    间 2016年 10 月   13 日    6   周 周四  1.2 节 截至日期 2016.10.13 11:50 实验任务清单 实验3-1 分别使用while循环.do while循环.for循环求                                          

10.11 Linux网络相关 10.12 firewalld和netfilter 10.13 ne

七周三次课 10.11 Linux网络相关 10.12 firewalld和netfilter 10.13 netfilter5表5链介绍 10.14 iptables语法 10.11 Linux网络相关 Linux网络相关 10.12 firewalld和netfilter netfilter为centos6的防火墙 关闭filter 开启netfilter并查看默认规则 10.13 netfilter5表5链介绍 小结:如果经过本机,PREROUTING----->INPUT---->OU

macOS 10.13中安装jre及jdk 9.0

1.前言: macOS 10.13里,默认没有找到jre. > ls /Library/Java/JavaVirtualMachines/ 目录中为空. 2.安装jre 下载地址: https://java.com/zh_CN/download/软件包 jre-9.0.4_osx-x64_bin.dmg,直接双击加载安装即可. 安装路径: /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/ 测试运行: > /Li

mac 10.13.2配置odoo9的环境

相关参考文档: 1.中英对照,卓忆整理简单翻译及验证:在Macos安装Odoo及配置odoo开发环境 2.Mac OS X 10.13上 安装odoo 11.0开发环境 正文 一:安装Homebrew 通过Homebrew我们可以像在linux中那样在终端中安装 安装包. 在MacOS的终端(Terminal)中键入以下命令(注意不包含#) ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/maste