Notice
Recent Posts
문제 풀이 및 개발 공간
[백준] 20365번 블로그2 문제! (silver 3 본문
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class Main{
public static void main(String[] args) throws IOException {
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(System.out));
int n=Integer.parseInt(br.readLine());
String a=br.readLine();
int sumB=0;
int sumR=0;
char temp='a';
for(int i=0; i<a.length(); i++) {
if(a.charAt(i)=='B') {
if(temp=='B') {
continue;
}
else {
sumB++;
temp='B';
}
}
else {
if(temp=='R') {
continue;
}
else {
sumR++;
temp='R';
}
}
}
if(sumB>=sumR) {
bw.write(1+sumR+"");
}
else {
bw.write(1+sumB+"");
}
bw.flush();
}
}
//이코드가 아래에 비해서, 메모리나 시간이나 거의 절반이 소요되는 효율적인 코드이다.
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class Main{
public static void main(String[] args) throws IOException {
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(System.out));
int n=Integer.parseInt(br.readLine());
String a=br.readLine();
int sumB=0;
int sumR=0;
String[] strB=a.split("R");
String[] strR=a.split("B");
for(int i=0; i<strB.length; i++) {
if(!strB[i].equals("")) {
sumR++;
}
}
for(int i=0; i<strR.length; i++) {
if(!strR[i].equals("")) {
sumB++;
}
}
if(sumB>=sumR) {
bw.write(1+sumR+"");
}
else {
bw.write(1+sumB+"");
}
bw.flush();
}
}
//이렇게 구현하면서, 메모리,시간효율 최악이지만, split에서 구분하는 문자가 연속할 경우 ""값을
//문자열로 받아들여 배열에 저장한다는 것을 깨달았다. 이럴경우
//문자배열에서 .equals("")가 아닐때로 잡아준다. 만약 문자를 구분할때 r b에서 b로 구분할 경우
// " "또한 문자열로 저장되는데 이는 " " 이지 ""은 아니다. 띄어쓰기는 무조건 " ",
//위처럼 있던 문자가 날라가면서 생기는 공백은 ""이다. 이둘의 차이점 기억하기!
'백준공부 > java' 카테고리의 다른 글
[백준] 10828번 스택 문제! (silver 4 (0) | 2022.08.25 |
---|---|
[백준] 10987번 모음의 개수 문제! (bronze 3 (0) | 2022.08.25 |
[백준] 10826번 피보나치 수 4 문제! (silver 5 (0) | 2022.08.25 |
[백준] 17608번 막대기 문제! (bronze 2 (0) | 2022.08.24 |
[백준] 12605번 단어순서 뒤집기 문제! (bronze 1 (0) | 2022.08.24 |