본문 바로가기
반응형

분류 전체보기60

ubuntu 환경에서 docker container가 갑자기 stop 되는 문제 해결 증상 웹사이트에 접속이 안된다는 연락을 받고 서버에 접속을 해서 확인해 보았는데 container가 stop 상태로 되어 있었다 원인 원인을 파악하기 위해 언제부터 웹사이트가 접속이 안됐는지 로그들을 살펴보았다 06:40:03 이때부터 접속이 안 되는 것으로 확인이 됐고 이 시점부터 확인을 해보았다 서버 모니터링 값을 보았을땐 특이한 이상한 점은 보이지 않았으며 (cpu나 트래픽 등 거의 없었음) php 로그에선 06:38:16 시점에 종료가 되는 로그가 찍혀있었다 [27-Jul-2021 06:38:16] NOTICE: Terminating ... [27-Jul-2021 06:38:16] NOTICE: exiting, bye-bye! /var/log/syslog 로그를 봤을 때 느낌이 왔다 Jul 27 .. 2021. 7. 28.
프로그래머스 실패율 자바 java 풀이 중요한 조건 1. 실패율이 같을 경우 스테이지가 작은 번호가 우선 2. 스테이지에 도달한 유저가 없는 경우 해당 스테이지의 실패율은 0 hashMap을 이용해서 key는 스테이지 value는 실패율 값을 집어넣어서 해결하였다 테스트 케이스 1, 6, 7, 9, 13, 23, 24, 25가 실패하는 에러가 발생할 경우 0을 나누려다 보니 에러가 계속 나는 것이 원인이 됩니다 N : 5 stage : [1,2,2,1,3]로 테스트 케이스를 추가해보면 원인을 알 수 있습니다 0 값일 경우 해당 스테이지에 실패율을 0을 입력해줘서 해결 코드 import java.util.*; class Solution { public int[] solution(int N, int[] stages) { int[] answe.. 2021. 6. 16.
프로그래머스 약수의 개수와 덧셈 자바 java 풀이 매개변수 left에서 right까지 for문으로 만들어 주고 약수를 찾기 위해서 for문으로 1부터 ~ N까지 모든 경우의 수로 나누는 방법으로 약수를 찾아내고 count변수에 총개수에 넣어줍니다 짝수 홀수를 구분하기 위해서 2로 나누어서 나머지 값이 0이라면 짝수 아니면 홀수로 구분을 합니다 코드 class Solution { public int solution(int left, int right) { int answer = 0; int count; for (int i = left; i 2021. 6. 15.
프로그래머스 로또의 최고 순위와 최저 순위 자바 java 풀이 배열에서 2가지 값들을 찾아야 한다 1. 당첨 번호와 구매한 번호를 비교하여 같은 번호의 총 개수 2. 구매한 번호의 0의 총 개수 두 배열에서 같은 번호를 찾는 방법으론 2중 for문을 이용해서 완전 탐색을 통해서 찾아냈다 같은 번호의 총개수로 로또의 최저 순위를 알 수 있고 같은 번호의 총 개수, 구매한 번호 0의 총 개수를 더해서 로또의 최고 순위를 알아낼 수 있다 순위 표시를 위해서 함수를 따로 만들어서 처리하였다 코드 class Solution { public int[] solution(int[] lottos, int[] win_nums) { int matchCount = 0; int zeroCount = 0; int topRank = 0; int lowestRank = 0; for (in.. 2021. 6. 11.
프로그래머스 내적 자바 java 풀이 a, b의 배열의 길이가 같기 때문에 for 문으로 두개의 배열의 값을 더해주고 출력해주면 해결 코드 public int solution(int[] a, int[] b) { int dotProduct = 0; for (int i = 0; i < a.length; i++) { dotProduct += a[i] * b[i]; } //System.out.println(dotProduct); return dotProduct; } 출처 https://programmers.co.kr/learn/courses/30/lessons/70128 2021. 6. 3.
프로그래머스 3진법 뒤집기 자바 java 풀이 10진법 수를 3진법으로 바꾸고 3진법 수를 반전시키고 반전시킨 3진법 수를 10진법으로 바꾸는 것으로 순서대로 해결합니다 while문을 통해서 3으로 계속 나눠서 3진법 문자열을 만들어 줍니다 while (n != 0) { base3 = (n % 3) + base3; n /= 3; } 3진법 반전하는 것은 StringBuilder 클래스와 reverse() 함수를 이용해서 문자열을 반전시켜서 해결합니다 StringBuilder sb = new StringBuilder(); base3 = sb.append(base3).reverse().toString(); 반전된 3진법을 다시 10진법으로 바꾸는 건 Integer.parseInt() 함수를 이용해서 해결합니다 answer = Integer.pars.. 2021. 4. 26.
반응형