본문 바로가기

알고리즘

[알고리즘]백준 2857

https://www.acmicpc.net/problem/2857

 

2857번: FBI

5개 줄에 요원의 첩보원명이 주어진다. 첩보원명은 알파벳 대문자, 숫자 0~9, 대시 (-)로만 이루어져 있으며, 최대 10글자이다.

www.acmicpc.net

import java.util.Scanner;
import java.util.*;

public class Main {
	public static void main(String[] args)
    {
		Scanner sc = new Scanner(System.in);
		boolean isFind = false;
		String[] arr = new String[5];
		for(int i=0; i<=4; i++)
		{
			arr[i] = sc.nextLine();
			
		}
		for(int i=0; i<=4; i++)
		{
			if(arr[i].contains("FBI"))
			{
				System.out.print((i+1) + " ");
				isFind=true;
			}
			
		}
		if(!isFind)
		{
			System.out.println("HE GOT AWAY!");
		}
		
    }

}

이 문제를 푸는 단계는 다음과 같다.

1) 5개의 문장이 들어갈 배열을 정의하고 해당 배열에 들어갈 문장을 입력받는다.

2)'FBI '라는 문자열이 배열 item에 포함되어 있는지 판단하고 있다면 해당 배열의 index를 출력하고 없다면 'HE GOT AWAY'를 출력한다.

 

우선 Scanner클래스를 사용하여 입력받아 왔다. 속도 면에서는 매우 느리다는 단점이 있다고 한다. 문자열은 개행을 기준으로 한줄씩 입력받아와야 하기 때문에 nextLine()을 사영하였다. 

해당 문자열에서 찾고자 하는 문자열이 포함되어 있는지 여부를 알고자 할때에는 contains()를 사용하여 알아낼 수 있다. 

'알고리즘' 카테고리의 다른 글

2024.2.5 백준 3문제  (1) 2024.02.06
[알고리즘] 백준 2525  (0) 2023.06.29
[알고리즘]백준 4153번: 직각삼각형  (0) 2023.05.28
[알고리즘]백준 2884번: 알람시계  (0) 2023.05.28
[알고리즘]백준 2588번 곱셈  (0) 2023.05.28