본문 바로가기

프로그래머 ,백준, 유튜브, 문제33

시저암호_프로그래머스 [필요개념] > char는 int값을 더함으로써 아스키코드표 내용으로 다룰 수 있다! > charAt(i) > toCharArray() class Solution { public String solution(String s, int n) { String answer = ""; //아스키코드를 써보려했지만, 90 = Z 91=[ 인 관계로 부적합하다고 판단! // 그냥 배열을 만들어서 거기서 돌리는 게 가장 낫겠다고 생각했다. // 정정! char를 사용해서 아스키코드를 돌리는 게 배열을 무식하게 만드는 것보다 낫다고 생각한다. // 매개변수의 길이만큼 for문 실행 for(int i=0; i='a' && ch 'z'){ answer += (char)(ch+n-26); } else{ answer += (c.. 2022. 9. 26.
소수만들기_프로그래머스 [필요개념] > 딱히 없음 > 소수 구하는 공식 class Solution { public int solution(int[] nums) { int answer = 0; for (int i = 0; i < nums.length - 2; i++) { for (int j = i + 1; j < nums.length - 1; j++) { for (int f = j + 1; f < nums.length; f++) { int sum = nums[i] + nums[j] + nums[f]; //여기서 소수구하는 함수를 호출함 answer += isPrime(sum) ? 1 : 0; } } } return answer; } // 소수구하는 함수 private boolean isPrime(int num) { for (in.. 2022. 9. 26.
문자열 내 마음대로 정렬하기_프로그래머스 [필요개념] > 딱히없음. 깔끔하게 잘 푼 것 같음! import java.util.ArrayList; import java.util.Collections; class Solution { public String[] solution(String[] strings, int n) { //ArrayList 자료구조 list 생성 ArrayList list = new ArrayList(); // list안에 입력배열값 추출한 후 안에 담아놓음 // (단어단위 분리한 후 n번째 문자 + 문자 그 자체 for(String string:strings){ list.add(string.split("")[n]+string); } // 오름차순으로 정렬 Collections.sort(list); // 배열크기 할당 Stri.. 2022. 9. 26.
로또의 최고 순위와 최저 순위_프로그래머스 [필요개념] > 단순화, 그게 제일 필요함. 이번에 푼 문제는 너무 돌아간 경향이 있음 (하단코드 참조) [알게된 것] > 특정 값을 Collections 객체에서 개수를 세는법 이 코드 진짜 깔끔하니 참고하자 // int[] answer = new int[2]; // int cnt1 = 0; // int cnt2 = 0; 로또번호 for문 // for(int i : lottos) { 만약 0이 있을 경우 카운트 게시하고 다시 for문 처음으로 돌아옴 // if(i == 0) { // cnt1++; // continue; // } 만약 0이 아닐 경우, win for문으로 하나하나 추출해 lottos에 있는 값인지 카운트 게시 // for(int j : win_nums) { // if(i == j) cn.. 2022. 9. 26.
최소직사각형_프로그래머스 [필요개념] > math.max / math.min 적극활용이 모자랐음 이 쉬운 걸 왜 못 깨달았을까! class Solution { public int solution(int[][] sizes) { int length = 0, height = 0; for (int[] card : sizes) { length = Math.max(length, Math.max(card[0], card[1])); height = Math.max(height, Math.min(card[0], card[1])); } int answer = length * height; return answer; } } class Solution { public int solution(int[][] sizes) { int answer = 0; .. 2022. 9. 25.
3진법 뒤집기_프로그래머스 [필요개념] > StringBuilder 사용법 > 진법 변환사용법 import java.lang.reflect.Array; import java.util.ArrayList; import java.util.Collections; class Solution { public int solution(int n) { int answer = 0; String str = ""; String[] a = Integer.toString(n,3).split(""); ArrayList lists = new ArrayList(); for(String list:a) { lists.add(list); } Collections.reverse(lists); for(String list:lists){ str += list; } ret.. 2022. 9. 25.