[백준] 2857번: FBI

응갱·2022년 7월 10일
1

백준

목록 보기
6/56
post-thumbnail

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

문제

5명의 요원 중 FBI 요원을 찾는 프로그램을 작성하시오.

FBI요원은 요원의 첩보원명에 FBI가 들어있다.

입력

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

출력

첫째 줄에 FBI 요원을 출력한다. 이때, 해당하는 요원이 몇 번째 입력인지를 공백으로 구분하여 출력해야 하며, 오름차순으로 출력해야 한다. 만약 FBI 요원이 없다면 "HE GOT AWAY!"를 출력한다.

코드

import java.util.Scanner;

public class pr2857 {

	public static void main(String[] args) {
		Scanner s = new Scanner(System.in);
		int cnt = 0;
		String[] arr= new String[5];
		
		for(int i=0;i<arr.length;i++) {
			String stc=s.next();
			arr[i]=stc;
		}
		
		for(int i=0;i<arr.length;i++) {
			for(int j=2;j<arr[i].length(); j++) {
				char c1= arr[i].charAt(j-2);
				char c2=arr[i].charAt(j-1);
				char c3=arr[i].charAt(j);
				if (c1=='F' && c2 == 'B' && c3 == 'I') {
					System.out.print((i+1)+" ");
					cnt++;
					break;
				}
			}
		}
		if(cnt==0)
			System.out.println("HE GOT AWAY!");
		
	}

}

코드 해석

입력된 문자열 한 줄당 FBI가 연속적으로 입력됐을때 FBI 요원을 출력하도록 하였다. FBI가 연속적으로 입력되지 않으면 FBI가 없는 것이므로 "HE GOT AWAY!"가 출력되도록 하였다.

🥔감자의 과정🥔

아직 배열을 활용한 for문에서 index가 헷갈린다. 이 문제를 풀때 index 오류가 계속 났었다.
출력 조건을 잘 확인하자.. break를 사용하지 않아 검사 시 계속 오류가 났다.

profile
🥔 한 덩이

0개의 댓글