일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 컴퓨터구조론 5판
- 중심사회
- 내일배움캠프
- MySQL
- 정보처리기사 실기 개념요약
- 스파르타내일배움캠프TIL
- 정보처리기사 개념요약
- 항해
- 개발자스터디
- 개인공부
- 부트캠프
- 소프트웨어
- 자바
- 스파르타내일배움캠프WIL
- 정처기 개념요약
- 백준
- java
- 운영체제
- til
- 국비
- Flutter
- Python
- 스파르타코딩클럽
- 프로그래머스
- 코딩테스트
- 스파르타내일배움캠프
- 정처기 실기 개념요약
- 99일지
- 컴퓨터개론
- 99클럽
- Today
- Total
목록프로그래머스 (18)
컴공생의 발자취
💡 오늘의 학습 키워드- 배열 중복제거- 배열 복사 * Arrays.copyOf(복사할 배열, 복사할 길이) * Arrays.copyOfRange(복사할 배열, 시작 인덱스, 마지막 인덱스)- Map : getOrDefault- 프로그래머스 * 롤케이크 자르기 : 미들러 문제( level 2 ) 배열 중복제거 [Java/Short] 배열/리스트 중복제거 방법 : 전체, 인접한 요소 중복 제거해당 글에서는 배열/리스트에서 중복된 요소들을 제거하기 위한 방법으로 전체에서 중복요소를 제거하는 방법과 인접한 상태에서의 중복된 요소를 제거하는 방법에 대해서 공유합니다. 1) 배열adjh54.tistory.com 배열 복사Arrays.copyOf( 복사할 배열, 복사할 길이 ): 지정한 배열을 인..
💡 오늘의 학습 키워드 - Call by Value - Call by Reference - 프로그래머스 * 행렬 테두리 회전하기 : 미들러 문제(Level 1) Call by Value : 자바는 오직 Call by Value로만 동작한다. Call by Value는 메서드를 호출할 때 값을 넘겨주기 때문에 Pass by Value라고도 부른다. 메서드를 호출하는 호출자(Caller)의 변수와 호출 당하는 수신자(Callee)의 파라미터는 복사된 서로 다른 변수이다. 값만을 전달하기 때문에 수신자의 파라미터를 수정해도 호출자의 변수에는 아무런 영향이 없다. Call by Reference Call by Reference는 참조(주소)를 직접 전달하며 Pass by Reference라도고 부른다. 참조를 ..
💡 오늘의 학습 키워드 - 프로그래머스 * 나머지가 1이 되는 수 찾기 : 비기너 문제(Level 1) 오늘의 회고 문제1 : [나머지가 1이 되는 수 찾기] 어떤 문제가 있었고, 나는 어떤 시도를 했는지 n을 입력받아서 x로 나누었을 때 나머지가 1이 되는 수를 리턴하는 문제이다. 단, x의 값은 n보다 작으며 나머지가 1이 되는 수를 찾지못하면 n-1을 리턴한다. n-1까지 반복문을 돌며 나누었을 때 나머지가 1일 경우 그 값을 리턴해주면 된다고 생각했다. 만약 반복문을 돌며 나머지가 1이 되는 경우가 없을 걸 대비해 미리 변수 선언을 n-1로 해주었다. 바로 문제풀이 완료! 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 ..
💡 오늘의 학습 키워드 - 프로그래머스 * 공원 산책 : 미들러 문제(Level 1) 오늘의 회고 문제1 : [공원 산책] 어떤 문제가 있었고, 나는 어떤 시도를 했는지 1차원 String 배열에서 시작점과 이동할 방향, 크기가 주어진다. 마지막으로 위치한 좌표(y, x)를 리턴하는 문제이다. 단, 아래의 경우는 해당 명령을 무시하고 다음 명령을 수행한다. 주어진 방향으로 이동할 때 공원을 벗어나는지 확인 주어진 방향으로 이동 중 장애물을 만나는지 확인 일단, 입력된 명령만큼 반복문을 돌며 동서남북을 판별하고, 공원을 벗어나는지 / 장애물을 만나는지 확인한다. 그렇게 로직자체는 어렵지 않았다. 문제는 배열의 범위를 벗어난게 문제였다. 배열의 범위를 자꾸 벗어나고 해서 GPT야.. 도와줘ㅠ 아래의 코드 부..
💡 오늘의 학습 키워드 - 프로그래머스 * 내적 : 비기너 문제(Level 1) 오늘의 회고 문제1 : [내적] 어떤 문제가 있었고, 나는 어떤 시도를 했는지 1차원 정수 배열 a, b가 주어졌을 때 a와 b의 내적을 리턴하는 문제다. 너무 쉬워서 그냥 보고 바로 끝냈다. 배열의 요소를 전부 돌며 a * b의 값을 더해주면 되기에 쉬웠다. 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 어떻게 해결했는지 class Solution { public int solution(int[] a, int[] b) { int size = a.length; int answ..
💡 오늘의 학습 키워드 - 시간 초과 - 프로그래머스 * 연속된 부분 수열의 합 : 미들러 문제(Level 2) 오늘의 회고 문제1 : [연속된 부분 수열의 합] 어떤 문제가 있었고, 나는 어떤 시도를 했는지 오름차순으로 정렬된 수열이 주어질 때, 부분 수열의 합이 K인 왼쪽, 오른쪽 인덱스를 리턴하는 문제이다. 여러 개인 경우 길이가 짧은 수열이, 길이가 짧은 수열이 여러 개인 경우는 앞쪽의 인덱스를 리턴해야 한다. 처음엔 어떻게 할지 몰라서 생각해보다가 수열이니까 BFS/DFS 이런 걸 사용하는 건가 싶어서 찾아봤다. 그런데 재귀인 것도 같고.. 아직 어떤 알고리즘을 어느 문제에 사용해야 하는지 익숙하지 않아 고민하다가 시간이 훌쩍 흘러버렸다. 그래서 결국 해당 문제를 풀이하신 분의 블로그를 찾아보았..
💡 오늘의 학습 키워드 - 프로그래머스 * 개인정보 수집 유효기간 : 미들러 문제(Level 2) 오늘의 회고 문제1 : [개인정보 수집 유효기간] 어떤 문제가 있었고, 나는 어떤 시도를 했는지 오늘의 날짜와 개인정보 수집 날짜 그리고 유효기간(월)을 알려주었을 때 폐기해야 하는 개인정보 번호를 리턴해주는 문제였다. 우선, split해야 하는 문제가 너무 많아서 당황했다. 이걸 어떻게 풀지? 어떻게 나누지? 라고 생각했지만.. 그래도 일단 공백, "\\."을 기준으로 문자열을 나누었다. 오늘의 년,월,일 유효기간 타입, 기간 개인정보들의 수집날짜, 유효기간 타입 이렇게 데이터를 정리해줬다. 반복문을 돌며 개인정보들의 수집날짜를 년,월,일로 다시 나누어주고 개인정보 유효 마감일을 구하고 오늘의 날짜가 개인..
💡 오늘의 학습 키워드 - 프로그래머스 * JadenCase 문자열 만들기 : 미들러 문제(Level 2) 오늘의 회고 문제1 : [JadenCase 문자열 만들기] 어떤 문제가 있었고, 나는 어떤 시도를 했는지 문자열을 입력받아 단어의 첫 글자는 대문자 나머지는 소문자로 만드는 문제였다. 공백은 한 번에 여러 번 입력가능하고, 숫자는 변환하지 않아야 한다. 오늘은 미들러 문제치고는 너무 쉬웠다. 전에 비슷한 문제를 풀이해봐서 그런가..? 일단 문자열의 첫 글자가 소문자일 경우 대문자로 변경해주고 아닐 경우는 그대로 넣어준다. 그리고 문자열의 두 번째 글자부터 문자열의 끝까지 반복문을 돌면서 아래와 같은 조건대로 변경해서 넣어준다. 해당 인덱스 앞이 공백일 경우 + 소문자일 경우는 대문자로 변경 해당 인..
💡 오늘의 학습 키워드 - 깊이 우선 탐색(DFS: Depth-First Search) - 프로그래머스 * 모음사전 : 미들러 문제(Level 2) 깊이 우선 탐색(DFS: Depth-First Search) : 한 정점으로부터 시작하여 가능한한 깊이까지 탐색을 진행하고, 더 이상 진행할 수 없는 경우 다음 경로로 되돌아가는 방식이다. 이를 통해 미로 찾기와 같은 문제를 해결할 수 있다. 재귀 또는 스택을 활용해 구현 가능 깊이 우선 탐색 비순환 그래프에서는 모든 노드를 방문 가능 순환 그래프에서는 무한 루프에 빠질 수 있으므로, 이미 방문한 노드를 추적하여 방문하지 않도록 주의 스택의 용량에 따라 메모리 사용량이 증가 public class Main { // 방문처리에 사용 할 배열선언 static b..
💡 오늘의 학습 키워드 - 프로그래머스 * 2016년 : 비기너 문제 오늘의 회고 문제1 : [2016년] 어떤 문제가 있었고, 나는 어떤 시도를 했는지 2016년의 몇월 며칠인지 알려주었을 때, 무슨 요일인지 리턴해주는 문제였다. 내가 제일 먼저 했던 방식은 반복문을 돌면서 2월은 윤달로 29일을 나머지 홀수달은 31일 짝수달은 30일을 총 날짜 수에 더해주는 것이었다. 이렇게해서 제출했을 때 테스트 케이스 1개만 통과하지 못했다. 그래서 이게 뭐지? 했는데... 어릴 때 월별 일수 계산하는 걸 이상하게 배워놓은 게 문제였다. 손등으로 세어봤을 때 7까지 세고 하나 더 31일로 세서 8월까지 31일로 세고 와야 하는데 30일로 세고 돌아왔지.. 살면서 달력 일수 세어볼 필요도 없고 세어본 적이 있었을 ..