AcWing 1211. 蚂蚁感冒

2023-10-25 01:30
文章标签 acwing 蚂蚁 感冒 1211

本文主要是介绍AcWing 1211. 蚂蚁感冒,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

AcWing网站原题通道

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

题目大意是:在很多只蚂蚁中有一直蚂蚁是感冒的,蚂蚁之间碰面的话,会掉头,当所有的蚂蚁离开长杆的时候,有多少只感冒的蚂蚁。

蚂蚁会掉头我们可以理解成蚂蚁之间互相穿过即可,也就是左边向右走的蚂蚁和右边向左走的蚂蚁碰面的话,那么我们就理解为他们并没有掉头,而是直接穿过对面的蚂蚁一直向前走即可,那么我们可以根据感冒的蚂蚁想左走还是向右走进行分类。

  • 假如感冒的蚂蚁向右走:
    (1)在感冒的蚂蚁左边的向左走的蚂蚁一定不会被感染
    (2)在感冒的蚂蚁右边的向右走的蚂蚁一定不会被感染
    (3)在感冒的蚂蚁右边的向左走的蚂蚁一定不会被感染
    (4)在感冒的蚂蚁左边的向右走的蚂蚁:如果在感冒的蚂蚁右边存在向左走的蚂蚁,那么一定会被感染;如果在感冒的蚂蚁右边不存在向左走的蚂蚁,一定不会被感染。

那么对于向左走也同理。

#include <iostream>
#include <cmath>
#include <algorithm>using namespace std;const int N = 55;
int n;
int a[N];int main()
{cin >> n;/*(1)蚂蚁向右走左边向左走,不会被感染右边向右走,不会被感染右边向左走,会被感染左边向右走:如果感染蚂蚁右边存在向左走的,会被感染;否则,不会被感染(2)蚂蚁向左走左边向左走,不会被感染右边向右走,不会被感染左边向右走,会被感染右边向左走:如果感染蚂蚁左边存在向右走的,会被感染;否则,不会被感染*/for(int i = 0; i < n; i++) cin >> a[i];int left = 0 , right = 0; // 表示左边向右走的蚂蚁数量,和右边向左走的蚂蚁数量for(int i = 1; i < n; i++){if(abs(a[i]) < abs(a[0]) && a[i] > 0) left++;if(abs(a[i]) > abs(a[0]) && a[i] < 0) right++;}// 如果蚂蚁向右走if(a[0] > 0 && right == 0 || a[0] < 0 && left == 0) cout << 1 << endl;else cout << left + right + 1 << endl;return 0;
}

这篇关于AcWing 1211. 蚂蚁感冒的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/279110

相关文章

【AcWing】851. 求最短路

spfa算法其实是对贝尔曼福特算法做一个优化。 贝尔曼福特算法会遍历所有边来更新,但是每一次迭代的话我不一定每条边都会更新,SPFA是对这个做优化。 如果说dist[b]在当前这次迭代想变小的话,那么一定是dist[a]变小了,只有a变小了,a的后继(b)才会变小。 用宽搜来做优化,用一个队列,队列里边存的就是所有变小了的结点(队列里存的是待更新的点)。 基本思路就是我更新过谁,我再拿

【AcWing】852. spfa判断负环

#include<iostream>#include<algorithm>#include<cstring>#include<queue>using namespace std;const int N= 1e5+10;int n,m;int h[N],w[N],e[N],ne[N],idx;int dist[N],cnt[N];//cnt存最短路径的边数bool st[N];v

NYOJ 745 蚂蚁的难题(二)

OJ题目 : http://acm.nyist.net/JudgeOnline/problem.php?pid=745 描述 下雨了,下雨了,蚂蚁搬家了。 已知有n种食材需要搬走,这些食材从1到n依次排成了一个圈。小蚂蚁对每种食材都有一个喜爱程度值Vi,当然,如果Vi小于0的时候,表示蚂蚁讨厌这种食材。因为马上就要下雨了,所以蚂蚁只能搬一次,但是能够搬走连续一段的食材。时间紧急,你快帮

我酸了,蚂蚁上市,财富自由都是他们的4、蚂蚁金服上市,算算你离财富自由还有多远?...

蚂蚁金服要上市的消息,大家应该都听说了。数据显示,上市后阿里及蚂蚁员工可能将诞生 5000 个千万富翁,500个亿万富翁!你看这数字,每一个 0 都是财富自由的象征。 我算了一笔账。如果你月入 2 万+ ,想要身价过千万,你至少需要努力 50 多年;如果你月入 1 万 5 ,至少需要努力 80 多年;如果你月入还没有过万,你可能需要 “ 做梦 ” 。 今天简单点,想说的就是:有的时候,做梦也是

蚂蚁SEO|AI养站程序是什么|蚂蚁蜘蛛池

《AI 养站程序:开启网站运营新未来》 在当今数字化时代,网站运营的重要性日益凸显。而 AI 养站程序的出现,为网站运营者带来了全新的机遇与挑战。 一、什么是 AI 养站程序 AI 养站程序是利用人工智能技术,对网站进行自动化管理和优化的工具。它可以自动生成内容、进行关键词优化、分析用户行为等,从而提高网站的流量、排名和用户体验。 例如,一些 AI 养站程序可以根据用户设定

小白怎么进入互联网大厂(最终选择蚂蚁金服)

简单的自我介绍一下,本硕学校都在西安的一所211,从大四暑假开始学习Java,研二暑假得到蚂蚁金服offer。 福利回馈 本来想把这一部分写在最后,但是想着还是放在最前面比较好。楼主在两年中积攒了大量的笔记还有一些面经,本着回馈牛客和互联网分享的精神,特此回馈一波。 百度网盘还有一些资料,有想要的同学可以加我微信:SARSKILLED,加微信的时候备注一下牛客就可以。想交流经验也可以,相

3.蚂蚁问题

有一根27厘米的细木杆,在第3厘米、7厘米、11厘米、17厘米、23厘米这五个位置上各有一只蚂蚁。 木杆很细,不能同时通过一只蚂蚁。开始时,蚂蚁的头朝左还是朝右是任意的,它们只会朝前走或调头,但不会后退。 当任意两只蚂蚁碰头时,两只蚂蚁会同时调头朝反方向走。假设蚂蚁们每秒钟可以走一厘米的距离。 编写程序,求所有蚂蚁都离开木杆的最小时间和最大时间。 思路,最短时间显然是蚂蚁

智慧理财新纪元:蚂蚁集团“支小宝”智能理财助理深度体验与测评

2023年9月8日,蚂蚁集团宣布推出面向消费者的智能金融助理“支小宝2.0”,这是该公司首个基于金融大模型的应用产品。该产品在语言力、知识力、专业力和安全力方面展现出卓越性能,旨在为用户提供包括行情分析、持仓诊断、资产配置和投资教育陪伴在内的全方位专业服务。         “支小宝2.0”以其高精度的意图理解和个性化的沟通风格著称,金融意图识别准确率高达95%,其金融事件分

QUIC 协议在蚂蚁集团落地总结

点击上方“朱小厮的博客”,选择“设为星标” 后台回复"书",获取 后台回复“k8s”,可领取k8s资料 自 2015 年以来,QUIC 协议开始在 IETF 进行标准化并被国内外各大厂商相继落地。鉴于 QUIC 具备“0RTT 建联”、“支持连接迁移”等诸多优势,并将成为下一代互联网协议:HTTP3.0 的底层传输协议,蚂蚁集团支付宝客户端团队与接入网关团队于 2018 年下半年开始在移动支付

AcWing 282. 石子合并

必看的视频讲解↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ 【E28【模板】区间DP 石子合并——信息学竞赛算法】 合并过程总开销等于红色数字总和,可以理解为花费的总体力! f数组的含义是f【i】【j】是从第i堆石子开始到第j堆石子的花费体力最小值 如何理解三层for呢? 第一层for是控制区间长度len,第二层for是控制区间起点位置i,第三层for是控制区间