목록알고리즘테스트 (115)
거인의 코딩일지
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/1fSNR/btsroKilOqr/N64ktXSBnaCMJwrlABvL4k/img.png)
class Solution { public int[] solution(int[] numbers, String direction) { int[] answer = new int [numbers.length]; if(direction.equals("right")){ int k = 1; for(int i = 0; i < numbers.length-1; i++){ answer[0] = numbers[numbers.length - 1]; answer[k++] = numbers[i]; } }else{ int k = 0; for(int i = 1; i < numbers.length; i++){ answer[k++] = numbers[i]; answer[answer.length-1] = numbers[0]; } } re..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/xKaGM/btsrgN70tZT/Gm1Fmn07HdiOmVBkA5HAk1/img.png)
import java.util.*; class Solution { public int solution(int[] array) { Arrays.sort(array); int answer = 0; int maxNum = array[array.length-1]; int [] cnt = new int [maxNum +1]; for(int i = 0; i < array.length; i++){ cnt[array[i]] ++; } int superMax = cnt[0]; for(int i = 1; i < cnt.length; i++){ if(superMax < cnt [i]){ superMax = cnt[i]; answer = i; }else if(superMax == cnt[i]){ answer = -1; } }..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/8lILj/btsrgRP4YC9/5rhBSMrqSpdZDykbnFepKk/img.png)
class Solution { public int[] solution(int[] array) { int[] answer = new int[2]; for(int i=0;i answer[0]) { answer[0] = array[i]; answer[1] = i; } } return answer; } } for 문을 통하여 answer[0] 에 array[i]를 배치시키고 계속 조건에 해당되는지 걸러서 answer을 리턴해 주었다.
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/qLXLQ/btsrgVx8Hto/Ls6fqsvPdyhX1RNW00uKx1/img.png)
import java.util.*; class Solution { public int[] solution(String my_string) { int size = 0; char [] arr = my_string.toCharArray(); for(int i = 0; i < arr.length; i++){ if((int)arr[i] < 97){ size++; } } int[] answer = new int [size]; int k = 0; for(int i = 0; i < arr.length; i++){ if((int)arr[i] < 97){ answer[k++] = Character.getNumericValue(arr[i]); } } Arrays.sort(answer); return answer; } } 우..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/rBYoW/btsrhHsUcGu/PfhW2m6NPjZmlct7iprW2K/img.png)
import java.util.*; class Solution { public int solution(int[] numbers) { int answer = 0; int size = 0; for (int i = numbers.length-1; i >= 1; i--){ size += i; } int [] arr = new int [size]; int k = 0; for(int i = 0; i < numbers.length; i++){ for(int j = i+1; j < numbers.length; j++){ arr[k++] = numbers[i] * numbers[j]; } } Arrays.sort(arr); return arr[arr.length-1]; } } 우선 배열을 하나 만들어서 넣어준다음 정렬을..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/SPYLi/btsrf4Cloy2/N1nW7bj7iYx3uDWkaPo8g0/img.png)
import java.util.Scanner; class Solution { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); for(int i = 0; i < b ; i++){ for(int j = 0; j < a; j++){ System.out.print("*"); } System.out.println(); } } } 직사각형 별찍기 또한 이중 for 문을 사용하여 별을 뿌려주었는데 달라진것은 a와 b 라는 변수가 있다는 것이다. a가 가로 b가 세로이기에 이중 for 문에서 b를 먼저 작성하고 a 를 그 안에 작성하여 별을 만들어서 ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bhr9uO/btsq5df59lg/UnMrEil47g3Ngz8RC2y3ok/img.png)
import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); String star = ("*"); for(int i = 1; i
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bJKb8A/btsq5XKP2Vu/cHmnkdBWDexO3gpKycRkrk/img.png)
class Solution { public int solution(int[][] arr) { int answer = 1; for(int i = 0 ; i < arr.length; i++){ for(int j = 0; j< arr.length; j++){ if(arr[i][j] != arr[j][i]){ answer = 0; } } } return answer; } } 우선 이중 반복문을 활용하여 값이 동일하면 answer 을 0에서 1로 바꾸라고 하였는데 그렇게 하닌까 값이 하나라도 일치하는 순간 answer 이 변경되었기에 기본 answer 을 1로 값을 주고 일치하지 않는 값이 하나라도 존재할 경우 answer 을 0으로 바꾸라고 해서 해결하였다.!
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/b3Tznn/btsrh3vV1tT/UK3uVeTrez5Kbx6P5kVwCK/img.png)
class Solution { public int[] solution(int n, int[] numlist) { int size = 0; for(int i = 0; i < numlist.length; i++){ if(numlist[i] % n == 0){ size++; } } int[] answer = new int [size]; int k = 0; for(int j = 0; j < numlist.length; j++){ if(numlist[j] % n == 0){ answer[k++] = numlist[j]; } } return answer; } } 우선 정답 배열의 size를 알아야 하기에 size 라는 변수를 만들어서 조건에 통과했을 때 마다 사이즈를 늘려서 사이즈를 알아냈고 다시 반복문을 활용하여..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bYF6dQ/btsrgngYlgA/uqKWarLTPPuktEksg2ot10/img.png)
class Solution { public boolean solution(String s) { boolean answer = true; char [] arr = s.toCharArray(); if(arr.length == 4 || arr.length == 6){ for(int i =0; i 57){ answer = false; } } }else{ answer = false; } return answer; } } 문자열을 char 배열에 넣어준뒤 배열의 길이를 먼저 조건 걸어서 넘기고 그 안에서 아스키코드로 확인하여 문자열이 존재할 경우 false 를 반환하게 하였고 또 배열의 길이가 조건에 맞지 않을 경우에도 false 를 반환하게 만들었다.