알고리즘24 [java] 회문(앞에서 뒤에서 읽을 때 같은 문자) 문자열 풀기 입력 pop 출력 yes 조건: 대소문자 구분 X 생각보다 쉽게 금방했던것 같다 대소문자를 상관하지 않으므로 str을 모두 대문자로하고 그전에 문자 위치 바꿀때 썼던 lt 와 rt 를 활용했다. 받은 문자열을 toCharArray 로 배열에 담고 각 문자가 다르면 cnt 수가 증가하게 했고 문자가 같으면 증가하지 않는다 전체 문자열을 while 을 통해 돌았을 때 cnt 가 0 이라면 우리가 원하는 회문문자인 것이다. 회문문자에서 홀수의 경우 가운대 단어는 조건에 영향을 미치지 않는다 그래서 lt 2023. 1. 24. [Java] 특정 조건에 부합되는 문자 뒤집기(알파벳만 위치 바꾸기) 입력 a#b!GE*T@S 출력 S#T!EG*b@a 대칭되는 알파뱃의 위치를 바꾸고 만약 한쪽만 알파벳이고 다른한쪽은 특수문자일 경우에 특수문자인 부분을 한번더 이동하여 체크해 바꿔준다. 알파벳과 특수문자를 어떻게 구분해야할지 몰라서 강의 먼저 수강하였습니다. Character.isAlphabetic(char) 해당 문자가 알파뱃이면 참을 반환하고 알파벳이 아니면 거짓을 반환한다. 강사님 풀이랑 완벽히 동일( 보고하지말자..ㅠㅠㅠㅠㅠ) String 을 입력받을 Scanner 를 만들고 solution 에서 입력받은 문자열을 담을 char[] 변수를 만들어준다 일단 lt 와 rt(문자열 길이 -1 =>인덱스니까)를 설정해놓고 rt 가 lt 보다 클때까지 돌아가는 while문을 만든다. 그리고 Characte.. 2023. 1. 23. [Java] 단어 뒤집기(StringBuilder.reverse()) N 개의 단어가 들어오면 뒤집어 출려해라 입력 1.입력받을 단어 개수 2.입력한 수에 맞는 각 영어 알파벳 입력 출력 입력 받은 단어들을 뒤집어서 출력 입력예시 2 foot home 출력예시 toof emoh 이렇게 풀어봤는데 원하는 값이 안나옴.. 강사님 강의 이렇게 했는데 안나온다... 강사님 강의 보고 알았음.. 와.. array를 system.out.println으로 한번에 출력하려고 하는 모자란놈... 반성하자.. 처음에는 solution 메소드에 arr 값만 넘겨줬으나 처음 배열의 크기를 정해야 해서 함께 넘겨줬다. solution 으로 넘긴 배열을 담아주고 이중 포문을 통해서 처음에 배열에 담긴 단어를 선택하고 그 후 배열안의 각 단어의 문자 하나하나를 구분하여 str에 담아주는데 담아줄때는.. 2023. 1. 22. [Java] 문장 속 단어(문장 속 가장 긴 단어를 출력하시오) 문제 입력 i am a boy hahaha hohoho 출력 hahaha( 글자가 동일한 단어들이 있으면 앞에 단어 출력) 입력받은 문장을 arr에 담아야 하는데 이때 split(" ")을 통해서 구분지어 arr에 담아준다 즉 스페이스바 (띄어쓰기) 기준으로 담아주고 이를 향상된 for문에 담아서 뒤에 들어오는 값이 크면 a에 x 를 넣어주는 것이다. 이때 크기가 동일하면 우선 들어간 a 값이 그대로 a 에 유지되게 된다. 여기서 좀 해맸던 부분은 kb를 Scanner로 입력받고 str에 넣을때 next()로 넣어서 스페이스바 딱 한 단어만 들어가서 한참 고민했다! 한 줄을 통째로 받으려면 nextLine()을 받아야 한다! import java.util.Scanner; public class Main .. 2023. 1. 22. [Java]대소문자 변환 문제 1.문자열입력받는다(알파벳) 2.대문자 -> 소문자 // 소문자 -> 대문자 변환해라 입력값 kONG 출력값 Kong 강의 듣기전 푼 코드 푼 과정에서의 생각 1. 문자를 받을 Scanner 를 Main 에 만들고 2. 받은 문자를 변수에 담아 Solution 에 전달한다. 3. 전달한 값을 구분해서 담을 array 를 선언하고 4. for 문으로 문자열의 길이만큼 돌리고 알파벳의 아스키코드가 대문자보다 소문자가 큰 것을 이용했으며 이때 기준점을 소문자 알파벳중 가장 작은 a 를 기준으로 구분해준다. 5. 그 기준으로 선언해 놓은 배열에 문자열을 charAt으로 잘라서 해당 위치의 문자열을 조건에 맞게 변경해준다. 6. 이 변경된 값을 return 값에 담기위해 향상된 for문을 통해 배열의 문자 값들을.. 2023. 1. 21. [Java]문자열에 포함된 문자 개수 찾기. 문제 입력값 abcDeEEe e 출력값 4 가 되는 코드를 만드시오. 첫문제는 강의부터 들었습니다.(이후에는 문제 풀고 강의 순) 이번 강의를 통해 remind 한 개념. 향상된 포문의 나열하려는 데이터 값을 넣을때는 항상 array 혹은 object(객체리터럴)을 넣어줘야 한다. 강사님 코드의 특징, 알아야 할 것. 1. solution 메서드가 인스턴스 메서드이기 때문에 Main T=new Main() 객체를 생성한 다음에 호출한 것입니다. 이게 싫으면 solution 메서드를 static 으로 하면 됩니다. 2. solution 메소드를 따로 만들고 결과값만 Main에 return 해서 출력해주는 방식으로 진행. 코테 관련해서 많이 부담스러웠는데 강의를 통해 푸는 방법을 배우니까 재밌는것 같습니다... 2023. 1. 21. 이전 1 2 3 4 다음