인프런 커뮤니티 질문&답변
채점 결과가 나오지 않습니다
작성
·
222
0
선생님 안녕하세요
12번 문제를 다음과 같이 풀었는데 계속 채점 중인 상태로 나오고 채점 결과가 나오지 않습니다..
제 코드 어느 부분에 문제가 있는걸까요?
퀴즈
61%나 틀려요. 한번 도전해보세요!
대소문자를 구분하지 않고 문자열 내 특정 문자의 총 개수를 세려면, 어떤 방법이 가장 효율적일까요?
문자열을 반복하며 각 문자가 찾으려는 문자의 대문자 또는 소문자인지 모두 비교한다.
문자열 전체를 한 가지 케이스(예: 모두 대문자)로 통일한 후 해당 문자의 개수를 센다.
대문자와 소문자의 개수를 각각 세어 합산한다.
Set 자료구조를 사용하여 중복 없이 문자를 저장한 후 개수를 센다.
답변 4
2
김태원
지식공유자
안녕하세요^^
아래 입력처럼 문자의 개수는 6개보다 더 많은 10까지지 입력될 수 있습니다.
8
#**#**##*#*#**#**#**##*#**###*#*#**#**#**##**##*##***#*#
0
0
sh8532k
질문자
넵 아래와 같습니다
import java.util.Scanner;
public class Main {
public String solution(int num, String str){
char[] charArray = new char[num];
StringBuilder binary = new StringBuilder();
int limit = 6;
for(int i = 0; i<str.length(); i++){
if (str.charAt(i) == '#') binary.append("1");
else if (str.charAt(i) == '*') binary.append("0");
if (i == limit) {
int decimal = Integer.valueOf(binary.toString(), 2);
charArray[i%6] = (char)decimal;
binary = new StringBuilder();
limit += 7;
}
}
return String.valueOf(charArray);
}
public static void main(String[] args) throws Exception{
Main main = new Main();
Scanner kb = new Scanner(System.in);
int num=kb.nextInt();
String str=kb.next();
System.out.println(main.solution(num, str));
}
}0





