蚂蚁感冒---第五届蓝桥杯真题

Posted 猪八戒1.0

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了蚂蚁感冒---第五届蓝桥杯真题相关的知识,希望对你有一定的参考价值。

目录

题目链接

题目描述

 分析:

代码:

 y总综合​

 666


题目链接

1211. 蚂蚁感冒 - AcWing题库

题目描述

 分析:

        y总真牛逼,掉头等价于穿过,以第一个点为分界点,分别判断

 

 

 

代码:

(自己写的真low)



import java.util.Scanner;

public class Main 
	static int a[] = new int[105];
	static int target, res=1;

	public static void main(String[] args) 
		Scanner sc = new Scanner(System.in);
		int N=sc.nextInt();
		
		for(int i=1;i<=N;i++) 
			int num=sc.nextInt();
			//记录第一只感冒蚂蚁
			if(i==1) target=num;
			//蚂蚁向右
			if(num>0) a[num]=1;
			//蚂蚁向左
			else a[-num]=-1;
		
		//如果第一只感冒蚂蚁向右
		if(target>0) 
			int j=target+1;
			//用来计数右边有多少个向左的,只要有一个就行
			int m=0;
			//右边情况
			for(;j<a.length;j++) 
				if(a[j]<0) 
					res++;
					m++;
				
			
			//左边情况
			for(int k=0;k<target;k++) 
				if(a[k]>0) 
					if(m>0) 
						res++;
					
				
			
		
		//如果第一只感冒蚂蚁向左
		else 
			int j=(-target)+1;
			//用来计数左边有多少个向右的,只要有一个就行
			int m=0;
			//左边情况
			for(int k=0;k<j;k++) 
				if(a[k]>0) 
					res++;
					m++;
				
			
			//右边情况
			for(;j<a.length;j++) 
				if(a[j]<0) 
					if(m>0) 
						res++;
					
				
			
		
		System.out.println(res);
	

 y总综合

 666

 

以上是关于蚂蚁感冒---第五届蓝桥杯真题的主要内容,如果未能解决你的问题,请参考以下文章

蓝桥杯 蚂蚁感冒

算法笔记_111:第五届蓝桥杯软件类省赛真题(Java本科A组)试题解答

第五届蓝桥杯Java组大学校园选拔真题_n级台阶

第五届蓝桥杯大赛个人赛(软件类)省赛真题

算法笔记_206:第五届蓝桥杯软件类决赛真题(Java语言A组)

蓝桥杯第十二届真题解析