일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- 코테연습
- 형변환
- 자동정렬해제
- Object.toString(0
- 여러줄주석
- 대소문자변환
- substring
- 코테
- 자바문자열치환
- 주석해제
- 특정문자뒤집기
- 개발자
- 개발자면접
- 보이는학생
- 자바
- 문자찾기
- 가장짧은문자거리
- 코테공부
- 코당테스트공부
- 자바기초
- 기초지식
- 신입개발자면접
- 회문문자열
- java
- length
- replace
- 긴단어찾기
- 코딩테스트
- 코딩테스트공부
- 코딩테스트연습
- Today
- Total
목록Algorithm (14)
일단 해보자고~

N명의 학생이 일렬로 서고, 일렬로 서 있는 학생의 키가 앞에서부터 순서대로 주어질 때, 맨 앞에 서 있는 선생님이 볼 수 있는 학생의 수를 구하는 프로그램을 작성하시오. ( * 앞에 선 사람보다 크면 보이고, 작거나 같으면 보이지 않음) public static void main(String[] args){ Main main = new Main(); Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int[] arr = new int[n]; for(int i = 0; i < n; i++) { arr[i] = sc.nextInt(); } System.out.println(main.solution(n, arr)); } 배열로 넘겨받아야 하는 게 아니므..

N개의 정수를 입력받아, 자신의 바로 앞에 있는 수보다 큰 수만 출력하시오. ( * 첫 번째 수는 무조건 출력한다.) public static void main(String[] args){ Main main = new Main(); Scanner sc = new Scanner(System.in); int n = sc.nextInt();// (1) int[] arr = new int[n];// (2) for(int i = 0; i < n; i++) {// (3) arr[i] = sc.nextInt();// (4) } for(int x : main.solution(n, arr)) {// (5) System.out.print(x + " ");// (6) } } (1) : n개의 정수를 입력받아준다. (2) :..

현수는 영희에게 알파벳 대문자로 구성된 비밀편지를 컴퓨터를 이용해 보낸다. 비밀편지는 서로 약속한 암호로 구성되어 있고, 한 문자마다 # 또는 *이 7개로 구성되어 있다. 현수가 '#*****#'으로 구성된 문자를 보냈다면 영희는 현수와 약속한 규칙대로 다음과 같이 해석한다. 1. '#*****#'을 일곱자리의 이진수로 바꾼다. #은 이진수의 1, *은 이진수의 0으로 바꾼다. 그러면 '1000001'이 된다. 2. 바뀐 2진수를 10진수로 바꾼다. '1000001'을 10진수로 바꾸면 65가 된다. 3. ASCII 코드에 맞게 숫자를 문자로 변환한다. 즉 ASCII 코드 65는 대문자 'A'가 된다. 현수가 4개의 문자를 #****###**#####**#####**##** 라고 보냈다면, #****##..

알파벳 대문자로 이루어진 문자열을 입력받아 같은 문자가 연속으로 반복되는 경우, 반복되는 문자 바로 오른쪽에 반복 횟수를 표기하는 방법으로 문자열을 압축하여 출력하시오. ( * 단, 반복 횟수가 1인 경우 생략함.) public String solution(String str){ String answer = ""; str = str+ " ";// (1) int cnt = 1;// (2) for(int i = 0; i 1) answer += String.valueOf(cnt);//..

한 개의 문자열 str과 문자 c가 주어지면 문자열 str의 각 문자가 문자 c와 떨어진 최소거리를 출력하시오. ( * 문자열과 문자는 소문자로만 주어진다) public static void main(String[] args){ Main main = new Main(); Scanner sc = new Scanner(System.in); String str = sc.next(); char c = sc.next().charAt(0); for(int x : main.solution(str, c)) { System.out.print(x + " "); } } main메서드인데 문자열과 문자를 입력받아야 하므로 next()와 next(). charAt() 메서드를 이용해 입력받았다. foreach문을 이용해 뒤에 ..

문자와 숫자가 섞여있는 문자열을 입력하고 그중 숫자만 추출하되, 그 순서대로 자연수를 만든다. ( * 만약 “tge0a1h205er”에서 숫자만 추출하면 0, 1, 2, 0, 5이고 이것을 자연수를 만들면 1205가 된다.) 풀이법 1. isDigit() 문제에서 숫자만 추출하라는 말이 있길래 isDigit라는 메서드가 생각나서 쉽게 풀수 있었다. class Main{ public int solution(String str){ String answer = "";// (1) for(char x : str.toCharArray()) {// (2) if(Character.isDigit(x)) answer += x;;// (3) } return Integer.parseInt(answer);// (4) } (1)..