문제
처음에 이 문제를 보았을때 하나의 String.length()까지 돌때 첫번째 'F'가 발견되면 그 뒤에 'B' 'I'가 차례대로 발견되면 해당되는 인덱스를 배열에 저장하여 출력하는 형식으로 생각하였다. 예외사항이 하나가 존재하는데 String.length()가 3미만이라면 그 부분은 continue를 통해 통과해준다. (단순한 String 다루는 문제)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
import java.util.StringTokenizer;
public class Main{
public static String [] arr;
public static int [] remember;
public static int count=0;
public static int indexCount=0;
public static void main(String[] args) {
Scanner sc= new Scanner(System.in);
arr= new String[5];
remember=new int[5];
for(int i=0;i<5;i++)
{
arr[i]=temp;
}
int qq=0;
for(int i=0;i<5;i++)
{
if(arr[i].length()<3)//길이가 3이하는 스킵
{
continue;
}
for(int j=0;j<arr[i].length();j++)
{
if(arr[i].charAt(j)=='F'&&arr[i].charAt(j+1)=='B'&&arr[i].charAt(j+2)=='I') //FBI
{
remember[indexCount]=i+1;
indexCount++;
count++;
break;
}
}
}
if(count==0)
{
System.out.println("HE GOT AWAY!");
}
int al=0;
for(int i=0;i<5;i++)
{
if(remember[i]!=0 && al==indexCount-1)
{
System.out.println(remember[i]);
}
else if(remember[i]!=0 && al!=indexCount-1)
{
System.out.print(remember[i]+" ");
al++;
}
}
}
}
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter
|
https://www.acmicpc.net/problem/2857
2857번: FBI
문제 5명의 요원 중 FBI 요원을 찾는 프로그램을 작성하시오. FBI요원은 요원의 첩보원명에 FBI가 들어있다. 입력 5개 줄에 요원의 첩보원명이 주어진다. 첩보원명은 알파벳 대문자, 숫자 0~9, 대시 (-)로만 이루어져 있으며, 최대 10글자이다. 출력 첫째 줄에 FBI 요원을 출력한다. 이때, 해당하는 요원이 몇 번째 입력인지를 공백으로 구분하여 출력해야 하며, 오름차순으로 출력해야 한다. 만약 FBI 요원이 없다면 "HE GOT AWAY!"를
www.acmicpc.net