2019년 4월 5일 금요일

Hackerrank Day 6 Let's Review



알고리즘 연습 사이트
www.hackerrank.com


Day 6:Let's Review


* String and Characters

char 형을 강제로 int형으로 변환시키면 숫자가 나온다.
문자데이터 한개는 아스키코드 숫자에 매칭되어 있기 때문이다.
예를 들면 소문자 c를 int로 바꾸면 ASCII value 인 99 라는 숫자를 얻어 낼 수 있다.


* String.toCharArray()
API docs: https://docs.oracle.com/javase/7/docs/api/java/lang/String.html#toCharArray%28%29
toCharArray() 메소드는 String 클래스의 메소드이다. String 문자열을 Char 배열로 반환해준다. 문자열의 구성요소들을 다룰 때 유용할 것 같다.


6일차 문제는 Scanner로 숫자를 입력하면 그 라인 수만큼 문장 혹은 단어를 입력받는다.
그리고 한 String 객체를 구성하고 있는 문자 요소들의 짝수번째 문자와 홀수번째 문자를 각각 모은다.
짝수와 홀수번째의 새로 만들어진 문자열을 가운데 공백을 끼워넣고 합쳐서 출력하면 된다.

Scanner sc = new Scanner(System.in);
 int num = sc.nextInt();
 sc.nextLine();
 String[] sArr = new String[num];


 for(int i = 0 ; i < sArr.length;i++){
     sArr[i] = sc.nextLine();
 }


 for(String tmp : sArr){
     String even = "";
     String odd = "";
     char[] cArr = tmp.toCharArray();
     for(int i = 0 ; i < cArr.length ; i++){
  if(i%2==0){
      even += cArr[i];
  }else{
      odd += cArr[i];
  }
     }
     System.out.println(even + " " + odd);
 }

댓글 없음:

댓글 쓰기