백준온라인
[백준온라인] 11091번 알파벳 전부 쓰기
cbkpar
2021. 7. 3. 17:15
문제 : https://www.acmicpc.net/problem/11091
11091번: 알파벳 전부 쓰기
팬그램은 26개의 알파벳, a~z를 최소 한번씩 모두 사용한 문장을 말한다. 아마 가장 유명한 문장은 이것일 것이다. "The quick brown fox jumps over the lazy dog." 꿍은 다른 문장들중에 팬그램인 것은 없는지
www.acmicpc.net
문제 요약 : 팬그램인지 확인후 아니라면 쓰이지 않은 알파벳 출력
입력 | 출력 |
N줄에 걸쳐 문장 입력(대, 소문자, 공백, 특수문자, 공백) | 팬그램 일경우 - pangram 출력 팬그램 아닐경우 - 쓰이지 않은 알파벳 오름차순 출력 |
JAVA
소스코드 : https://github.com/cbkpar/BOJ/blob/main/boj_11091.java
채점 번호 | 아이디 | 문제 번호 | 결과 | 메모리 | 시간 | 언어 | 코드 길이 |
30607142 | cbkpar | 11091 | 맞았습니다!! | 14184KB | 124ms | Java 11 | 822B |
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int t,i;
t = Integer.parseInt(br.readLine());
while(t-->0) {
String str = br.readLine().toLowerCase();
boolean[] chk = new boolean[26];
for(i=0;i<str.length();i++) if(str.charAt(i)>='a'&&str.charAt(i)<='z') chk[str.charAt(i)-'a'] = true;
boolean ispan = true;
for(i=0;i<26;i++) if(!chk[i]) ispan = false;
if(ispan) {
sb.append("pangram\n");
}else {
sb.append("missing ");
for(i=0;i<26;i++) if(!chk[i]) sb.append((char)(i+'a'));
sb.append("\n");
}
}
System.out.println(sb);
}
}
br.readLine().toLowerCase();
//a-z 와 A-Z를 번거롭게 나눠서 계산하는 것을 방지하기 위해 입력을 소문자로 받아옴.