博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第十一届蓝桥杯 C/C++ 大学A组/研究生组 E题 咫尺天涯dp做法
阅读量:4048 次
发布时间:2019-05-25

本文共 2039 字,大约阅读时间需要 6 分钟。

题目:

在这里插入图片描述
在这里插入图片描述

计算出的答案为:23769050146281024

以下为C++代码

#include 
using namespace std;#define POW2(X) (1 << (X))#define CKBIT(S, X) (((S)&POW2(X)) != 0)const double pi = acos(-1.0);const double eps = 1e-11;template
inline void ckmin(T & a, T b) {
a = min(a, b);}template
inline void ckmax(T & a, T b) {
a = max(a, b);}template
inline T sqr(T x) {
return x * x;}#define SIZE(A) ((int)A.size())#define LENGTH(A) ((int)A.length())#define MP(A, B) make_pair(A, B)#define PB(X) push_back(X)#define FOR(i, a, b) for (int i = (a); i < (b); ++i)#define REP(i, a) for (int i = 0; i < (a); ++i)#define ALL(A) A.begin(), A.end()template
int CMP(T a[], const T b[], int n) {
return memcmp(a, b, n * sizeof(T));}template
void COPY(T a[], const T b[], int n) { memcpy(a, b, n * sizeof(T));}template
void SET(T a[], int val, int n) { memset(a, val, n * sizeof(T));}using uint = unsigned int;using int64 = long long;using uint64 = unsigned long long;using ipair = pair
;using VI = vector
;using VD = vector
;using VVI = vector
;using VS = vector
;const int MOD = 1000000007;using ll = long long;using namespace std;int main() { ll dots = 1; int N = 12; cout << endl; unordered_map
h, v; while (N-- > 0) { unordered_map
ht, vt; ht[1] = 6 * dots; vt[3] = vt[5] = vt[1] = 2 * dots; dots *= 9; for (auto & p : v) { if (p.first % 4 == 1) { int d = (p.first - 1) * 9; ht[d + 1] += p.second; ht[d + 3] += p.second; ht[d + 5] += p.second; } else { int d = (p.first + 1) * 9; ht[d - 1] += p.second; ht[d - 3] += p.second; ht[d - 5] += p.second; } } for (auto & p : h) { if (p.first % 4 == 1) { int d = (p.first - 1) * 9; vt[d + 1] += p.second; vt[d + 11] += p.second; vt[d + 13] += p.second; } else { int d = (p.first + 1) * 9; vt[d - 1] += p.second; vt[d - 11] += p.second; vt[d - 13] += p.second; } } h = move(ht); v = move(vt); } ll res = 0; for (auto & p : h) res += p.first * p.second; for (auto & p : v) res += p.first * p.second; cout << res;}

转载地址:http://yuuci.baihongyu.com/

你可能感兴趣的文章
Jenkins + Docker + SpringCloud 微服务持续集成 - 单机部署(二)
查看>>
Jenkins + Docker + SpringCloud 微服务持续集成 - 高可用集群部署(三)
查看>>
Golang struct 指针引用用法(声明入门篇)
查看>>
Linux 粘滞位 suid sgid
查看>>
C#控件集DotNetBar安装及破解
查看>>
Winform皮肤控件IrisSkin4.dll使用
查看>>
Winform多线程
查看>>
C# 托管与非托管
查看>>
Node.js中的事件驱动编程详解
查看>>
mongodb 命令
查看>>
MongoDB基本使用
查看>>
mongodb管理与安全认证
查看>>
nodejs内存控制
查看>>
nodejs Stream使用中的陷阱
查看>>
MongoDB 数据文件备份与恢复
查看>>
数据库索引介绍及使用
查看>>
MongoDB数据库插入、更新和删除操作详解
查看>>
MongoDB文档(Document)全局唯一ID的设计思路
查看>>
mongoDB简介
查看>>
nodejs 浏览器弹窗下载图片 data:image/jpeg;base64示例
查看>>