문제 문제분석 - 다른사람들의 코드를 참고하여 알고리즘을 이해하였습니다. N번째의 문자를 빼는 것까지는 생각을 하였지만, 이후에는 어떤 방법을 사용해야하는지 생각을 하지 못했습니다. 개인적으로 LEVEL1단계에서 좀 난해한 문제가 아니였다 생각합니다. 코드 프로그래머스 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 import java.util.*; class Solution { public String[] solution(String[] strings, int n) { ArrayList list = new ArrayList(); for(int i=0;i
문제 문제 분석commands 는 2차원 배열로 첫번째는 시작점, 두번째는 끝지점, 그리고 마지막 세번째는 자른배열안에서 K번째의 자리를 꺼내라 라는 의미를 갖고있습니다. 여기서 commands[i][j] j가 0이면 시작점, 1이면 끝지점, 2이면 K번째 수 이처럼 정해져있으며, i가 계속해서 변하는 수 이기에 i를 계속해서 변화 시켜 주면 됩니다. 하지만 i가 가르키는 지점은 0번부터 시작하는 것이 아니고 1번부터 시작하기에 commands[i][0~2] -1을 통해 배열을 찾아갈 수 있도록 해줘야합니다. k번째도 똑같이 해주면됩니다. 코드 프로그래머스12345678910111213import java.util.*;class Solution { public int[] solution(int[] arr..
문제 문제해석문제는 비교적 간단합니다. 현재 위치의 값과 다음값을 비교하여 같은면 넘어가고 다른면 현재위치의 값을 배열에 저장을 해주면됩니다.만약에 문제에서 정렬을 하라는것이 있었으면 sort메소드를 이용하여 정렬을 하면됩니다.하지만 문제는 마지막위치에 있는 값을 "어떻게 비교하냐" 입니다.결론적으로 마지막에 있는 값은 그전의 값과 같던, 틀리던 무조건 배열에 저장을 해주면 됩니다. 왜냐하면 만약에 4,4,4,3,3 라는 배열이 주어지게되면 우선 2번째와 3번째 값이 다르기 때문에 4라는 값이 배열에 저장이 될것이며, 다음 3번째와 4번째 값이 같기 때문에 배열에 저장되지않습니다.그리고 다음으로 넘어가 4번째와 5번째 둘이 비교를 해야하지만 5번째 위치의 값이 존재 하지 않기때문에 outOfBounds라..
본 게시물은 Youtube 생활코딩 GIT 파트에 해당되는 내용을 참고하여 게시한 내용입니다. 여러분들은 아마 지금까지 프로젝트를 진행하면서 로컬저장소에 저장을 하셨을것입니다. 저같은 경우에는 개인NAS장비가 있어서 로컬저장소와 NAS에 2중으로 백업 하고 있습니다.하지만 모든사람들이 NAS를 갖고있는것이 아니기 때문에 2중으로 백업하는것은 쉽지 않을 것 입니다.혹시라도 지금이라도 백업을 안하고 각종 프로젝트들을 로컬저장소 즉 내 컴퓨터 C,D 드라이브에 보관을 하고 계신다면, 적어도 USB에 지금 즉시 백업하시는 것을 적극 권장합니다. 내 컴퓨터가 언제 먹통이 될지 모르기 때문이죠...아니면 지금 제가 알려드리는 원격저장소를 만들고 업로드 하는 방법을 배우셔서 원격저장소에 2중으로 백업을 하셨으면 좋겠..
본 게시물은 Youtube 생활코딩 GIT 파트에 해당되는 내용을 참고하여 게시한 내용입니다.브랜치를 이용하여 코드를 수정하고 병합하는 과정에서 수정하는 부분이 겹쳐서 충돌이 일어나는 경우가 있다,결론적으로 충돌을 해결하는 방법은 수작업으로 진행을 해야한다. ---------------------------------------------------------------------------------------------------------------------------------------------------------------병합과정에 충돌이 일어나면 다음과 같은 메세지를 볼 수 있습니다.그리고 코드로 돌아가게되면 다음과 같은 화면을 볼 수 있습니다.=====기준으로 위에는 master 브랜..
본 게시물은 Youtube 생활코딩 GIT 파트에 해당되는 내용을 참고하여 게시한 내용입니다. 프로젝트를 진행하다보면 미래가 불분명한 실험을 진행해야 할 때가 있습니다. 예를 들어 앱개발을 진행 하고있는데, 의뢰자로부터 어떠한 기능을 추가해달라고 요청을 받았습니다. 하지만 그 기능이 다소 어렵고 몇번의 실험과 테스트를 거쳐야합니다. 그런데 그런일은 없겠지만 계속 진행하던 프로젝트 파일을 이용하여서 그 기능을 추가 하고 테스트를 진행하고 있었는데, 의뢰자의 변덕으로 인해 그 기능은 취소하고 싶다고 하였습니다. 이런경우에는 지금까지 진행하던 프로젝트 파일을 전면 수정을 해야하고, 수정 해야하는 코드가 만줄 이상이 된다면…결코 쉽지 않은 작업이 될것입니다. 아니면 기존의 프로젝트 파일의 복사본을 만들어 프로젝..
본 게시물은 Youtube 생활코딩 GIT 파트에 해당되는 내용을 참고하여 게시한 내용입니다.이번에는 예전 버전으로 돌아가는 다른 방법에 대해서 설명드리겠습니다.앞선 게시물은 자신이 원하는 버전으로 돌아가면서 이후에 버전들은 모두 삭제하는 방법이였습니다.하지만 자신이 선택한 버전으로 돌아가면서 Commit되어있는 기존버전은 삭제하지 않으면서 자신이 원하는 버전으로 돌아가는 방법이 있습니다.그것은 바로 Revert 입니다. Revert 는 자신이 선택한 그 버전을 취소해서 그 버전 이전상태로 돌리는 것을 Revert라고 합니다. 예를 들어 README 파일추가 상태로 돌아가고 싶다면 README 파일 수정을 선택하고 오른쪽클릭하고 Reverse commit… 클릭하면 새로운 Commit이 자동으로 만들어지..
본 게시물은 Youtube 생활코딩 GIT 파트에 해당되는 내용을 참고하여 게시한 내용입니다.코딩을 하면서 지속적으로 Commit을 하다가 만약에 현재 버전이 맘에 들지 않거나, 해당 프로젝트를 모두 갈아 엎을 경우에 자신이 원하는 버전으로 돌아가고 싶고 해당 버전 이후에 내용을 삭제하고 싶다면 어떻게 해야할까요?? 여기에서는 title 추가 버전으로 돌아간다고 가정하겠습니다. 제일 쉬운 방법은 자신이 돌아가고싶은 버전을 선택하고 오른쪽 클릭을 하고, Reset master to this commit를 선택합니다. Using mode 를 Hard로 선택하고 ok를 선택하면 자신이 선택한 이후의 버전들과 아직 commit 되지않은 버전들 모두 사라지게 됩니다. 그리고 자신이 작성한 코드를 보게되면 기존의 ..