蒟蒻的尊严被打得一败涂地19

不知不觉都19了呢

回归正题——咳咳

植物大战僵尸

题目描述

坚果保龄球是植物大战僵尸中的一个小游戏。现在疯狂戴夫只给了 fuleidi一些最普通的坚果,让 fuleidi 像保龄球一样把坚果扔出去,砸死院子里的僵尸。

院子一共由 N条轨道组成,从上到下依次编号从 1 到 N,每条轨道又被分成若干格。院子里一共有 M 只僵尸,每只僵尸站在某个格子内,并且可以认为它的位置不会变化。

游戏可以分成 K 个回合,在每个回合中,你可以选择一条轨道,把一个坚果扔出去。被扔出去的坚果首先会沿着轨道直线的从左往右滚动,直到撞到第一只僵尸之后,它开始沿着 45 度的斜线滚动,并且向中心的一侧滚动(即前 N/2 行的向右下滚动,后N/2 行的向右上滚动,题目保证 N 是偶数)。院子的两边是围墙。斜着走的坚果撞到围墙或者僵尸会反弹,即从往右上走变成往右下走,或者反过来。直到坚果不再能打到任何僵尸之后,该回合结束。

注意:多只僵尸可能站在同一格,这个时候坚果每次只会撞死该格子的其中一只僵尸。为了砸死尽量多的僵尸,现在 fuleidi 决定在每回合的开始,选择在当前情况下可以砸死最多僵尸的一条路线扔出坚果。在出现相同的情况时,他会选择编号最小的轨道扔出。

为了了解这个做法的效果,现在 fuleidi 需要你帮助他计算这个方法可以砸死的僵尸数目。

输入格式

输入的第一行有 3 个整数,N,M,K。接下来 M 行,每行两个整数 Xi​, Yi​,表示第i个僵尸位于第 Yi​ 条轨道,从左数第 Xi​ 个格子中。

输出格式

输出数据包括 K+1 行。前 K 行,每行2个数据 Ai​,Bi​,表示在第 i 个回合,从第 Ai​ 条轨道扔出坚果,这个坚果在运行过程中打到了 Bi​ 个僵尸。最后一行是一个数字,表示被打到的僵尸总数。

输入输出样例

输入 #1

4 2 1
1 2
5 2

输出 #1

2 2
2

说明/提示

【数据范围】

对于 20% 的数据,保证:N≤200,M≤500,K≤200,Xi​≤200;

对于 50%的数据,保证: N≤200,M≤2×105,K≤200,Xi​≤106;

对于 100% 的数据,保证:N≤20000,M≤2×105,K≤105,Xi≤106。

对于所有的数据,保证:1≤Yi​≤N。

答案---19-优快云博客

C++开发者在寻求帮助或交流时,通常会关注技术深度、社区氛围以及持续学习的机会。对于有经验的开发者来说,参与专业社区或俱乐部可以提供宝贵的资源和交流平台。例如,IncrediClub作为一个聚集了大量C++开发者的平台,通过举办线上技术探讨会、海外专家圆桌论坛等活动,为开发者们提供了丰富的学习与交流机会[^1]。 在技术层面,C++开发者可能会遇到各种具体问题,从基础语法到高级特性如模板、多态、继承机制等。此外,设计模式的应用、STL容器的内部实现原理、内存管理策略以及编译器相关的错误排查也是常见的讨论话题[^2]。 加入专门的开发者俱乐部或参与相关技术讨论组不仅可以帮助解决日常编码中遇到的具体难题,还能够促进对行业最新趋势和技术的理解。这类社区往往鼓励成员分享自己的项目经验,并就复杂的技术点展开深入对话,这对于个人技能提升非常有帮助。 如果希望进一步深化自己的专业知识,或者寻找志同道合的技术伙伴共同成长,那么积极地参与到这样的专业社群中去是非常有益的选择之一。 ### 寻找合适的交流平台 - **专业社区**:加入像IncrediClub这样的专业C++开发者社区,可以获得最新的技术资讯、参与高质量的技术讨论。 - **在线论坛**:Stack Overflow、Reddit上的r/cpp等是解决具体编程问题的好地方。 - **GitHub**:参与开源项目不仅可以提高编码能力,还能与其他贡献者建立联系。 - **Meetup/线下活动**:参加本地或线上的技术聚会,直接与同行交流心得。 ### 提升个人影响力 - 分享知识:撰写博客文章、录制教程视频或是发表演讲都是展示自己专长的有效方式。 - 参与开源:为知名C++开源项目做贡献不仅能锻炼实战能力,也能增加曝光度。 - 建立人脉:利用LinkedIn等职业社交网络维护良好的人际关系网,有助于未来的职业发展。 ```cpp // 示例代码 - 使用vector的基本操作 #include <iostream> #include <vector> int main() { std::vector<int> vec; // 添加元素 for(int i = 0; i < 5; ++i) { vec.push_back(i); } // 输出vector中的元素 for(auto it = vec.begin(); it != vec.end(); ++it) { std::cout << *it << " "; } return 0; } ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值