First Step (ファーストステップ)

题目背景

知らないことばかりなにもかもが(どうしたらいいの?)
一切的一切 尽是充满了未知数(该如何是好)
それでも期待で足が軽いよ(ジャンプだ!)
但我仍因满怀期待而步伐轻盈(起跳吧!)
温度差なんていつか消しちゃえってね
冷若冰霜的态度 有朝一日将会消失得无影无踪
元気だよ元気をだしていくよ
拿出活力 打起精神向前迈进吧

我们 Aqours,要第一次举办演唱会啦!

虽然学生会长看上去不怎么支持我们的样子,可是有了理事长的支持,我们还是被允许在校内的篮球场里歌唱!

歌曲也好好地准备过了,名字叫“最喜欢的话就没问题! (ダイスキだったらダイジョウブ!)“,大家一定会喜欢的吧!

演唱会一定会顺利进行的!

希望不要发生停电什么的事故哦……!

题目描述

可是……这个篮球场,好像很久没有使用过的样子啊……

里面堆满了学校的各种杂物呢……

我们 Aqours 的成员要怎么在里面列队站下呢?

我们浦之星女子学院的篮球场是一个 RRR 行 CCC 列的矩阵,其中堆满了各种学校的杂物 (用 # 表示),空地 (用 . 表示) 好像并不多的样子呢……

我们 Aqours 现在已经一共有 KKK 个队员了,要歌唱舞蹈起来的话,我们得排成一条 1×K1\times K1×K 的直线,一个接一个地站在篮球场的空地上呢 (横竖均可)。

我们想知道一共有多少种可行的站位方式呢。

Aqours 的真正的粉丝的你,能帮我们算算吗?

输入格式

第一行三个整数 R,C,KR, C, KR,C,K。

接下来的 RRR 行 CCC 列,表示浦之星女子学院篮球场。

输出格式

总共的站位方式数量。

样例 #1

样例输入 #1

5 5 2
.###.
##.#.
..#..
#..#.
#.###

样例输出 #1

8

提示

RRR CCC KKK 备注
1∼21\sim21∼2 ≤10\leq 10≤10 ≤10\leq 10≤10 ≤min⁡(R,C)\leq \min(R,C)≤min(R,C)
3∼43\sim43∼4 ≤100\leq 100≤100 ≤100\leq 100≤100 ≤1\leq 1≤1
5∼65\sim65∼6 ≤100\leq 100≤100 ≤100\leq 100≤100 ≤min⁡(R,C)\leq \min(R,C)≤min(R,C) 没有障碍
7∼107\sim107∼10 ≤100\leq 100≤100 ≤100\leq 100≤100 ≤min⁡(R,C)\leq \min(R,C)≤min(R,C)

对于所有数据,1≤R,C≤1001 \leq R,C \leq 1001≤R,C≤100,1≤k≤min⁡(R,C)1 \leq k \leq \min(R,C)1≤k≤min(R,C)。

以下是彩蛋

在 LoveLive!Sunshine!! 动画第一季第三集中,Aqours 队长高海千歌演唱“最喜欢的话就没问题!”到副歌前时,学校因为雷击停电。

解析

暴力枚举。找到所有可以站立的点,然后分别往右和往下找k个位置看看是否符合条件。
需要注意的是,当k=1,也就是只站立一个人的时候,由于程序是分别往右和往下找,所以每个可以站立的点都被计算了两次。因此,在输出结果之前要进行特判,如果k=1就把结果除以2。谢谢你,有被恶心到。

#include<bits/stdc++.h>
using namespace std;
const int N=102;
char c[N][N];
int n,m,sum,k;
bool f(int i,int j,int ni,int nj)
{if(ni>n||nj>m) return false;int s1=0,s2=0;for(int l=i;l<=ni;l++)if(c[l][j]=='.')s1++;else break;for(int l=j;l<=nj;l++)if(c[i][l]=='.')s2++;else break;return (s1==k)||(s2==k);
}
int main()
{cin>>n>>m>>k;for(int i=1;i<=n;i++)for(int j=1;j<=m;j++)cin>>c[i][j];for(int i=1;i<=n;i++)for(int j=1;j<=m;j++)if(c[i][j]=='.'){sum+=f(i,j,i,j+k-1);sum+=f(i,j,i+k-1,j);}if(k==1)sum/=2;cout<<sum<<endl;
}

【算法1-3】暴力枚举——First Step相关推荐

  1. 【算法1-3】暴力枚举——PERKET

    [COCI2008-2009#2] PERKET 题目描述 Perket 是一种流行的美食.为了做好 Perket,厨师必须谨慎选择食材,以在保持传统风味的同时尽可能获得最全面的味道.你有 nnn 种 ...

  2. 算法基础2 —— OJ入门以及暴力枚举

    常见的OJ术语 Accepted (AC)-- 成功过题 Wrong Answer (WA) -- 输出结果错,一般是算法有问题,需要重新考虑思路或者其他 Runtime Error (RE) -- ...

  3. 【暴力枚举】【JAVA】P3654First Step

    题目:P3654 First Step (ファーストステップ) - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) ## 思路 双重遍历所有位置(因为是二维表),分别是向下和向右寻找可行 ...

  4. 算法小课堂(一)暴力枚举

    . 目录 一.概念 1.1相关概念 1.2应用场景 1.3局限性 二.相关问题 2.1例题1:统计 2.2例题二 二倍的问题 2.3例题3 奶牛碑文 2.4例四网友年龄 2.5例五生日年龄数 2.6数 ...

  5. 啊哈算法——第三章:暴力枚举

    第三章:暴力枚举 枚举的思想不必多说,此处仅引数中两例. 火柴棍等式 #include <iostream> using namespace std; const int maxn = 1 ...

  6. 算法模版:暴力搜索之DFS【沈七】

    本文已收录于专栏 ⭐️ <算法通关笔记>⭐️ 算法模版:暴力搜索之DFS 前言 基本概念 算法思想 常用模板 三种枚举方式 指数型枚举 排列型枚举 组合型枚举 完结散花 题目练习 参考文章 ...

  7. 最大字段和 冲出暴力枚举

    这篇解题报告是对我最近一些题的总结,里面的代码都是我解题,优化,再优化的过程的记录,记录了自己对算法的完善与优化思路,还有对编程哲学的理解:do it,do it well. 很感谢孙老师您,让自己可 ...

  8. 每日一练蓝桥杯C语言:暴力枚举

    在这里我给大家推荐一款不错刷算法学习网站:点击这处链接牛客网:牛客网作为国内内容超级丰富的 IT 题库,各种东西看的我眼花缭乱,题库+面试+学习+求职+讨论+大厂内推等等服务,堪称"互联网求 ...

  9. 新手入门刷题(专题三)暴力枚举

    新手入门刷题(专题三)暴力枚举--->持续更新 4.14 统计方形(数据加强版) 题目描述 有一个 n×m 方格的棋盘,求其方格包含多少正方形.长方形(不包含正方形). 输入格式 一行,两个正整 ...

最新文章

  1. python配置opencv最简单_(Python)从零开始,简单快速学机器仿人视觉Opencv—第二节:OpenCV的视频操作...
  2. 好东西和大家分享阿!
  3. android html5播放器,android Html5播放器混音解决方案
  4. IDEA中记一次BuildProject不好使的解决过程
  5. 使用NSURLCache 数据缓存
  6. 关于在nw里使用require('printer')和nw.require('printer')报错的问题
  7. n个结点,不同形态的二叉树(数目+生成)
  8. 没有bug队——加贝——Python 49,50
  9. 多任务Python爬虫
  10. mysql日期代码_mysql日期查询操作代码
  11. [转]Windows Shell编程 第十五章【来源:http://blog.csdn.net/wangqiulin123456/article/details/7988016】...
  12. LeetCode 64.最小路径和(动态规划)
  13. word文字覆盖问题
  14. 计算机课题立项申报书范文,专项课题立项申报书模板.doc
  15. Oracle数据库备份与还原语句
  16. cdr 表格自动填充文字_常平办公软件培训分享之word表格自动填充序号
  17. 雨林木风最新万能GHOST系统制作教程
  18. mysql集群方案参考
  19. 媛明源科普基金倡议发起婴儿日
  20. Android 9(P)应用进程创建流程大揭秘

热门文章

  1. python swapcase用法_python中swapcase是什么意思
  2. java example使用_关于通用 Mapper Example 使用记录
  3. notify验签失败及其原因
  4. python职业发展规划-Python开发者的四大进阶攻略,菜鸟的成神之路
  5. 基于python的医学图像以辅助医疗系统
  6. HP EliteDesk 800 G4 DM 35W (Japan) Mini Tower黑苹果efi引导文件
  7. 什么是外键? 为什么需要外键?怎么使用外键?
  8. 总线干扰神器——VH6501
  9. 鼠标右键快捷方式小技巧
  10. android p支持4.1,版本过老 Android P将不再支持这类应用