728x90
가볍게 문제를 한 번 봤는데 쉬워보여서 풀어봤다
근데 0을 입력하면 입력을 그만받게 해야되는데 왜 그게 안 되지 ????! 기초 중에 기초인데 !!
낼 다시 도전 !
3/17
while(true) {
if(br.readLine()!="0") {
String tmp = br.readLine();//Integer.toString(scanner.nextInt());
num.add(i, tmp);
i++;
}
else if(br.readLine()=="0")
break;
}System.out.println("끝");
br.readLine()으로 하면 반복문이 안 끝나
가 문제가 아니라
엥 ???
while(true) {
if(scanner.nextInt()==0) {
String tmp = Integer.toString(scanner.nextInt());
num.add(i, tmp);
i++;
}
else if(scanner.nextInt()==0)
break;
}System.out.println("끝");
조건을 이렇게 걸어야 0 입력했을 때 반복문이 끝나네 ????? 뭐지 뭐지 뭐지 ????????
내가 바보였다 저것도 걍 틀린 거고
문자열을 비교할 때는 ==이 아니라 String equals로 해야하잖아 ! 그리고 괄호안에 ("")큰 따옴표 안에 비교해 줄 문자열 넣는 거 잊지말고 !
완성 코드
package algorithm;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
public class Main{
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
List <String>num = new ArrayList<>();
int count =0;
int i=0;
while(true) {
String input = br.readLine();
if( !input.equals("0")) {
num.add(i,input);
i++;
}else break;
}
for(int k =0;k<num.size();k++) {
count=0;
String str = num.get(k);
int size = str.length();
for(int j=0;j<size/2;j++) {
if(str.charAt(j) == str.charAt(str.length()-(j+1)))
count++;
}
if(count == size/2)
System.out.println("yes");
else System.out.println("no");
}
}
}
팰린드롬 수 비교하는 건 많이 해봤으니까 가벼웠따
57606335 scanner로 받았을 때
57605919 bufferedreader 사용했을 때 시간차이
728x90
'알고리즘 > 백준' 카테고리의 다른 글
1654번 문제 : 랜선 자르기 (0) | 2023.03.19 |
---|---|
1436번 문제 : 영화감독 (0) | 2023.03.18 |
1018번 문제 : 체스판 다시 칠하기 (0) | 2023.03.16 |
10250번 문제 : ACM호텔 (0) | 2023.03.13 |
10814번 문제 : 나이순 정렬 (0) | 2023.03.12 |