본문 바로가기

분류 전체보기189

[Algorithm] 2개의 배열 내적 2개의 배열이 주어지며 2개의 배열의 내적을 구해라 내적이란 ? : a[0] * b[0] + a[1] * b[1] ------ + a[n-1] * b[n-1] 이 내적이다 내 풀이가 적당한것 같다. ============================================================================================ 다른 사람의 풀이로는 Stream을 이용한 방법이 있었다. 2022. 5. 28.
[Algorithm] 음수와 양수의 합을 구하기 프로그래머스[초급] 2개의 배열이 주어지며, 2개의 배열의 길이는 같다. 1개의 배열은 TRUE, FALSE 가 들어있고, 1개의 배열에는 1~1000사이의 숫자가 있다. 이때 1번[i], 2번[i] 일때 True일떄는 2번의 i값은 양수 False일경우는 음수이며, 리턴은 모든 양수와 음수의 합을 리턴한다. 식은되게 간단했다. 내가 고쳐야 할점은 더 간결하게 더 쉽게 표현하려고 노력해야 될것같다. 어제, 오늘 +1 점씩 받으니 조금 오기가 생긴다. ============================================================================================ 다른사람들은 3항 조건식을 사용하거나, signs 배열 자체에 True, False가 들어있.. 2022. 5. 28.
[Servlet] Servlet 특징2 URL 패턴 Servlet은 Lazy init()으로 : 늦은 초기화 loadOnStartup=1 --> 미리 초기화 하는것으로 숫자는 우선순위를 써주면된다. @WebServlet으로 우선순위 종류 URL MAPPING 매칭 URL 1 exact mapping /login/hello.do ~/login/hello.do 2 path mapping /login/* (/뒤로 뭐가와도됨) ~/login/ ~/login/hello ~/login/hello.do 3 extension mapping *.do (.do로 끝나는것만) ~/hi.do ~/hello.do 4 default mapping / (모든 주소와 맵핑) ~/ ~/hello.do ~/login/ ~/login/hello @WebServlet ==> S.. 2022. 5. 27.
[Servlet] Servlet 특징 Servlet을 생성할때는 클래스마다 URL 맵핑을 실시 하기 때문에 클래스를 많이 생성해야 한다. 또한 Servlet 클래스는 HttpServlet을 상속하고 init(), service(), destory() 3개의 매서드를 오버라이드 한다. init()의 경우는 처음 서블릿을 호출할때 실행되며, 사용자의 요청에 따라 처리되는 내용들은 service() 함수에서 실행된다. destory() 의 경우 해당 어플리케이션이 종료 되거나 서블릿이 종료될때 사용되어진다. /hello 를 호출하면 init() 메서드와 service() 메서드가 실행되는것을 확인할 수 있다. 그후 똑같이 /hello를 호출하면 처음 init()이 호출된 이후로 다시 실행되지 않고 service() 메서드만 호출되었다. 또한 코드.. 2022. 5. 27.
[Algorithm] 없는 숫자 더하기 프로그래머스[초급] 문제 0~9 까지의 숫자가 있는데 주어지는 배열에서 0~9 까지의 숫자중 없는 숫자를 더하는 알고리즘 아주 간단한 문제였고, 다른 사람들의 풀이를 보면서 와... 뒤통수를 맞은 느낌이였다. 내가 풀이한 방식은 1. 주어진 배열을 문자열로 바꾼후 2. for문을 통해서 (0~9)로 돌림 // 3. numStr에 i값이 포함되는지를 확인하여 포함되지 않은 값을 더해주는 방식으로 처리하였다. - 다 풀고나서 생각해보니 만약에 0~9가 아니라 0~10 까지만되어도 내 풀이는 효과적이지 못했다. 단지 0~9 까지만에서만 사용할 수 있는 풀이였던것 같다. ============================================================================다른 .. 2022. 5. 27.
[Algorithm] 인형 제거 게임 프로그래머스[초급]알고리즘 룰을설명하자면 N x N 게임판이 있고 숫자가 1층부터 n층까지 쌓여있다. moves = {1, 5,4, 3 } // moves 라는 배열에 적혀있는 숫자 대로 해당 열의 숫자를 한개씩 뺴서 저장하고 저장된값중 2개연속된 숫자의 경우는 제거해준다 -> 제거시 +2 씩 점수가 더해진다. ** 문제는 간단했는데 풀면서 착각을해서 다시 풀었다 게임판안에 들어가는 이중배열 board[][] 가 { {1} , {2}, {3}, {4}, {5} } 이라고 한다면, {1} 은 5X5 게임판이라고 했을맨 가장 상단의 줄에 들어갈 요소 값들이다. 나는 {1} 이 1열에 들어갈거라고 착각을해서 수정이 조금 있었다. =============================================.. 2022. 5. 26.
[Linux/C] 파일 입출력1-1(표준입출력) 입출력 함수에 대해서 알아보자. 한문자씩 읽고 쓰는 함수로 getchar() // putchar() 가 있다 getchar() 함수의 경우는 입력대기상태로 있다가 키보드로 부터 입력을 받으면 1문자가 c에 저장되고 이때 문자는 아스키 코드 값으로 int 값으로 저장된다. putchar() 함수에 의해서 c (1문자)를 출력해준다 console에 문장 단위로 읽고 쓰는 함수로 gets() // puts() gets() : Enter 키를 누르기 전까지 공백을 포함한 모든 문자열을 입력받는다 puts() : 문자열을 화면에 출력하고 , 자동으로 줄바꿈을 실시한다. ++ 추가해서 보면 좋을 블로그 https://blog.naver.com/vjhh0712v/221481858395 2022. 5. 25.
[Linux/C] 파일 입-출력2 파일 입출력의 기본적인 패턴 - 1. 파일을 연다(여는 옵션이 있다) 읽기모드(r), 쓰기모드(w), 추가모드(a) - 사용되는 함수는 fopen("파일이름/(즉)경로","사용 할 모드"); - 2.파일을 읽거나 쓴다 - 사용되는 함수는 읽기(fread() 등..) 쓰기 (fprintf() 등..) - 3. 읽거나 쓴 파일을 닫는다 - 사용되는 함수는 fclose() 표준 입출력 2022. 5. 25.
[Algorithm] 키패드 누르기 프로그래머스 초급단계 키패드 누르기 알고리즘문제이다. 조건. 1. 1,4,7일경우 L(왼손으로 누르고) 2. 3,6,9일경우 R(오른손으로 누르고) 3. 0,2,5,8일경우 왼손과 오른손의 거리중 가까운 손으로 누른다 이때 동일한 거리에 있을 경우 매개변수로 투입된 손으로 누른다("left" -> L , "Right" -> R) ============================================================================ 아래는 나의 풀이이다. 1. 문제를 풀면서 가장 힘들었던건 0,2,5,8일때 왼손과 오른손 거리를 측정해서 가까운 거리의 손으로 누르는것을 표현하는게 힘들었다. == > 이것을 해결하기 위하여 번호를 누를때 마다 왼손(Left)과 오른손(Rig.. 2022. 5. 25.
[Algorithm] 숫자문자열과 영단어 숫자와 해당 숫자의 영문자를 -> 숫자로 나타내는 알고리즘으로 12ninezero3 --> 1293 으로 나타내는 알고리즘으로 나는 Map을 사용했다. 1. 가장먼저 바꿔야할 문자를 Key로 넣었고, 바뀔문자를 숫자로 넣었다. 2. 그후 map의 향상된 for문을 통해서 map.entrySet() 값을 하나씩 받아서 해당 map의 key 값과 value값을 확인할 수 있는데 이때 해당 Key값이 문자열 s에 포함되어있는지 확인 하고, 포함되어있다면 key값을 value 값으로 바꾸도록 코드를 만들었다. ====================다른분들의 방법으론==================== 보통. 배열을 많이 사용했고, 배열에 문자만 넣어서 배열을 1개만 사용하거나, 배열을 문자, 숫자 1개씩 만들거나.. 2022. 5. 24.