ブルーブリッジ] [アリカップ冷たい(簡単な思考タイトル)

タイトル説明

N-アリ100センチ直ポール細長いです。彼らの頭といくつかの左、右にいくつか。

各ANTは、速度を1cm / secである、ポールに沿って前方にクリープすることができます。

2匹のアリが出会うとき、反対方向にクロール中、彼らは好転します。

これらのアリ、アリは風邪をひいています。そして、ときに他のアリ、あなたが遭遇する風邪にアリを満たしています。

してください仕事、すべてのアリは、極から離れてクロールされたとき、どのように多くの寒さに苦しんアリ。

エントリー

入力整数N(1 <N <50)の最初の行は、アリの総数を表します。

続いてN行が西(-100 <Xiの<100)、西、ポールの左端から離れるアリの絶対値が整数スペースで区切られています。正の値は左方向にヘッドが負の値を表し、データ値0が表示されない、それは2匹の蟻が表示され、同じ位置を占めていないだろう、頭の右方向を示しています。風邪のその中でも、アリ最初のデータの代表。

輸出

アリ最終冷間の数を表す整数要求出力。

サンプル入力

5
-10 8 -20 12 25

サンプル出力

3

問題解決のためのアイデア

アリはそれが伝染性ではありません満たしていない場合は、単純なシミュレーション時間は、アリのスピードの成果や情報を混乱与えられている枝の長さになります。
アリはアリアリA左行くための唯一の権利の数に応じて、左に行くには余りにも冷たい場合
> 0の場合(1)、結果は右側のみアリアリに移動する左+1 +の数です
( = 0の場合2)、結果は1である
アリはすぐに風邪であれば右アリアリB左へ行くかの数に応じて、
B> 0の場合(1)、結果は唯一B +です+1は、左右アリアリに行く
B = 0の場合、結果が1である、(2)

コード

package 蚂蚁感冒;
import java.util.Scanner;
public class Main {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner in=new Scanner(System.in);
		int n=in.nextInt();
		
		int []a=new int [50];
		a[1]=in.nextInt();
		int x1=0,x2=0,y1=0,y2=0;
		for(int i=2;i<=n;i++)
		{
			a[i]=in.nextInt();
			if(Math.abs(a[i])<Math.abs(a[1]))
			{
				if(a[i]<0)
				{
					y1++;
				}
				else
				{
					x1++;
				}
			}
			else
			{
				if(a[i]<0)
				{
					y2++;
				}
				else
				{
					x2++;
				}
			}
		}
		if(a[1]<0)
		{
			if(x1>0)
				System.out.println(x1+y2+1);
			else
				System.out.println(x1+1);
		}
		else
		{
			if(y2>0)
				System.out.println(x1+y2+1);
			else
				System.out.println(y2+1);

		}
	}

}

公開された20元の記事 ウォンの賞賛0 ビュー3860

おすすめ

転載: blog.csdn.net/weixin_44544406/article/details/104282360