A 皮呵德
2024-10-09 00:23:48
|
问题描述
Eyiz正在与邪恶的Dgdon战斗.
为了打败Dgdon,Eyiz决定召唤PhantasmDragon来帮助他.
但是,召唤PhantasmDragon需要搭建一个祭坛.祭坛可以视作一个 N × M的网格.网格从上往下数第 i 行,从左往右数第 j 列记作(i, j) .
现在,Eyiz在网格的每个格子中放置了三种字符中的一种,召唤出PhantasmDragon的数量取决于三种字符的排列方式.具体的,数量等于满足以下条件的有序四元组(i, j, k, l) 的数量.
条件:(i, j) 位置上的字符为P, (i, l) 位置上的字符为H,(k, j) 位置上的字符为D.
Eyiz想知道一共能召唤出多少只PhantasmDragon.
输入格式
第一行有三个整数N,M,表示一个 的祭坛.
接下来N行,第i行给出一个长度为M的字符串,表示祭坛上第i行的字符.
输出格式
输出一行一个整数,表示一共能召唤出的PhantasmDragon的数量.
样例输入 1
3 4
PHDP
PDHH
DDDD
样例输出 1
3
样例输入 2
4 4
PPHH
PPHH
DDPH
DDDP
样例输出 2
17
提示
对于20%的数据N ≤ 100,M ≤ 100.
对于50%的数据N ≤ 500,M ≤ 500.
对于100%的数据N ≤ 3000,M ≤ 3000. 数据没有梯度,OI需要信仰.
最新文章
- java 多线程 4 线程池
- 编译可在Android上运行的qemu user mode
- 回忆读windows 核心编程
- .tostring()格式化大全
- iOS 中的Certificate,Provisioning Profile 等在code singing中用到的信息
- kill 命令详解 系统信号
- 机器学习在 IT 运维管理中的必要性!
- 聊聊Dataguard的三种保护模式实验(上)
- struts2配置文件中action的name属性
- java动态绑定的情况分析
- YII CRUD 例子
- Java学习之旅基础知识篇:数组及引用类型内存分配
- bzoj 1084;vijos 1191 [SCOI2005] 最大子矩阵
- 如何关闭windows server2012 80端口
- ionic 项目中,ng-bind-html会过滤掉内嵌样式的问题
- c语言笔记 数组2
- Zookeeper集群方式安装
- 20145208 蔡野 《网络对抗》Exp5 MSF基础应用
- mysql插入中文时候编码问题
- CRLF与LF解析
热门文章
- git涨姿势(一)
- duid 配置监控
- Gorm 预加载及输出处理(一)- 预加载应用
- 内网渗透之跨边界传输 - LCX转发
- scrapy 在爬取过程中抓取下载图片
- Redis02——Redis内存数据如何保存到磁盘
- 前后端分离基于Oauth2的SSO单点登录怎样做?
- 树链剖分与倍增求LCA
- Python3 + requests + unittest接口测试
- ngzorro draw 第一次打开 ERROR TypeError: Cannot read property 'overlayElement' of undefined