언어 선택: JAVA, C#, C++, GO, JS, Kotlin, Python2, Python3, Ruby, Scala, Swift

 

[링크]

programmers.co.kr/learn/courses/30/lessons/12934

 

코딩테스트 연습 - 정수 제곱근 판별

임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함

programmers.co.kr

오늘의 문제는 어떤 수가 다른 정수의 제곱인지를 판단하는 문제입니다. 즉, 제곱수인지를 확인하는 문제입니다.

 

그리고 문제의 조건이 제곱수이면 그 제곱수의 제곱근(x) +1의 제곱을 반환하도록, 그리고 제곱수가 아니면 -1을 반환하도록 처리하였습니다.

 

입력받은 수를 가지고, 특정 수 x를 찾기위한 인덱스 i를 i * i 가 입력받은 수 n보다 작거나 같을 때까지 증가시켜가면서 i의 제곱이 n인지를 확인 처리하여 결과는 (i+1)^2를 반환하도록 하였습니다.

 

<소스 코드>

 

 

 

<실행 결과>

 

오늘은 아래의 증상으로 네트워크 연결을 할 수 없게 되어버린 문제를 해결한 방법입니다.

 

이 포스팅은 네트워크가 연결되지 않는 환경, 혹은 PC의 문제를 해결하기 위해 다른 PC나 노트북으로 볼 가능성이 많다고 생각하여 결론을 먼저 보여드리고 그 이후 추가로 했던 삽질(사실은 먼저 했던...)을 보여드리겠습니다.

 

 

가능하면 아래의 방법은 서피스의 펌웨어 업그레이드 프로그램을 다운로드하신 후 해당 설치 전에 해 보시는 것을 권장드립니다.

 

그리고 3dp Net이라는 네트워크 드라이버를 설치해줄 수 있는 프로그램을 미리 준비하셔서 혹시 생길 수 있는 다른 사태에 대비를 하시는 것 또한 권해드리겠습니다.

 

 

 

 

그러면 오늘의 짧은 결론부터 보여드리겠습니다.

 

 


 

저는 장치 관리자에서 무선 네트워크 컨트롤러를 제거해줍니다.

 

 

제거한 후에는 3dp NET으로도 확인이 되지 않는데요. 저는 제거 후 3dp NET으로 설치를 하려고 했지만 아예 설치할 수 없었습니다.

 

 

 

장치 관리자로 돌아와서 동작 > 하드웨어 변경사항 검색을 클릭하면, 제거되었던 드라이버가 다시 추가됩니다. 

 

 

 

 

이제부터는 오늘 구글링 하여 찾은 방법 중 삽질, 저의 경우는 해당사항이 없었던 경우입니다. 해외 블로그를 기반으로 하셨던 것을 다시 따라 하면서 정리해보았습니다.


 

 

문제 화면입니다.

와이파이가 잠시 끊긴 건데 자연스럽게 윈도 문제 해결을 몇 번 시도했다가 네트워크 초기화를 눌러 위와 같은 참사가 벌어졌습니다.

 

하;;;; 윈도..... MS이건 아니잖아요;;;;

 

 

 

 

윈도키를 눌러서 검색을 합니다. <장치 관리자>라고 검색하여 실행해줍니다.

 

 

장치 관리자에서 네트워크 컨트롤러를 우클릭하여 속성을 눌러줍니다.

 

 

 

 

열린 속성 창에서 자세히 탭으로 이동을 한 후 드라이버 키라는 속성을 확인합니다.

위에서 드라이버 키 중괄호( {  } ) 안의 값 외에 있는 숫자, 저의 경우를 0009라는 경로처럼 표시된 부분이 보이는데 이 번호는 추후 레지스트리 편집기에서 속성 값을 수정할 때 찾아야 하니 알아두셔야 합니다.

 

 

레지스트리 편집기를 열고 아래 경로를 찾아봅니다.

 

컴퓨터\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4d36e972-e325-11ce-bfc1-08002be10318}\0009

 

붉은색으로 표시한 부분을 사용자의, 확인하시는 개개인의 PC 기기마다 차이가 있을 수 있으니, 앞의 과정에서 드라이버 키값을 입력하시면 되겠습니다. 아니면 녹색 경로를 입력한 후 드라이버 키값과 키 아래의 번호를 찾아 열어줍니다.

 

해당 중괄호 값을 찾아줍니다.

 

 

저의 폴더 번호인 0009안의 값들을 확인합니다.

EnableDot11d라는 속성 값이 0으로 되어있으면 1로 고치면 된다고 했는데 저는 0009 폴더는 물론 다른 폴더에서도 정확하게 같은 속성이 없어서 이 방법을 사용할 수는 없었습니다.

 

 

 

 

언어 선택: JAVA, C#, C++, GO, JS, Kotlin, Python2, Python3, Ruby, Scala, Swift

 

[링크]

programmers.co.kr/learn/courses/30/lessons/12932

 

코딩테스트 연습 - 자연수 뒤집어 배열로 만들기

자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. 제한 조건 n은 10,000,000,000이하인 자연수입니다. 입출력 예 n return 12345

programmers.co.kr

 

숫자 하나를 입력받으면, 그 숫자의 각 자릿수를 역순의 배열로 만들어주는 기능을 구현하면 해결할 수 있는 문제입니다.

 

 

풀이 방법은 쉽게 system함수를 이용해서, 반복문으로 각 자릿수를 리스트에 원자로 하나씩 추가해주었습니다.

 

 그리고 list의 Reverse를 이용하여 순서를 뒤집은 후 배열로 변환하여 반환하였습니다.

언어선택: JAVA, C#, C++,GO,JS,Kotlin, Python2, Python3, Ruby, Scala, Swift

 

[링크]

programmers.co.kr/learn/courses/30/lessons/12930

 

코딩테스트 연습 - 이상한 문자 만들기

문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을

programmers.co.kr

 

 

 

문제 설명

 

문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.

 

제한 사항

  • 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다.
  • 첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다.

 

 

이 문제는 전체 문자열 중 단어를 구분하여, 단어별로 문자열을 처리할 수 있도록 하는 것이 핵심입니다.

 

 

 

<소스 코드>

 

 

 

 

<실행 결과>

 

 

오늘의 문제는 약수의 합입니다.

 

 

 

언어 선택: JAVA, C#, C++, GO, JS, Kotlin, Python2, Python3, Ruby, Scala, Swift

 

[링크]

programmers.co.kr/learn/courses/30/lessons/12928

 

코딩테스트 연습 - 약수의 합

정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. 제한 사항 n은 0 이상 3000이하인 정수입니다. 입출력 예 n return 12 28 5 6 입출력 예 설명 입출력 예 #1 12의 약수

programmers.co.kr

오늘은 문제를 풀다 말았어서 복습 겸 다시 풀었습니다.

 

그때 분명 아이디어를 반복문을 해당 숫자까지 돌려서 나머지가 0이면 (약수이면) answer에 누적하여 합계를 반환하도록 하면 되겠다 했는데, 프로그레머스에 코드가 없어 다시 작업을 했습니다.

 

 

간단한 반복문 내의 조건 비교로 처리할 수 있는 문제였습니다.

 

슬로바키아에 와서 술이 한국보다 훨씬 구하기 쉽고 다양하며, 싸서 이것저것 사 모으고 칵테일을 만들려고, 또 사 모으다 보니 술이 어느 정도 늘었습니다.

 

그러한 술들을 처리하고, 맛있게 먹고, 또 뭔가 해 보기 위해 칵테일을 하나하나 만들어보게 되었습니다.

 

오늘은 그것 중 첫 번째로 언젠가 있어봤던 그곳! 맨해튼! 한글로도 영어로도 발음이 뭔가 어려운 그냥 맨! 하! 탄! 을 만들어보았습니다.

 

 

레시피는 그림에 얼추 써 둔 것처럼 우선 네이버에 검색해서 나온 비율로 만들었습니다.

 

위스키                        2 oz

스위트 베르무트.           1 oz

비터                           1 dash

마라스키노 체리.           1 ea

 

스위트 베르무트는 흔히 아는 디자인을 겨우겨우 구했으나, 10월 09일 당일날에는 구하지 못했습니다.

 

우선 있는 재료들로 열심히 흉내만 내 보았습니다.

 

 

 

 

얼음까지 준비 완료!!

 

재료를 넣고 저어준 뒤 마실 잔에 옮겨 따라주면 됩니다. 그 후 체리를 넣거나 별도로 하나를 가져와 먹는 방법도 있다고 합니다. 저는 그냥 무난하게 체리까지 넣어서 만들어 보았습니다.

 

 

 

술이 밍밍해 얼음이 있는 그 상태로 마셨습니다. 

마티니 글라스가 있으면 더 좋았을 텐데 하는 아쉬움도 남았습니다.

 

 

 

 

위스키의 향과 함께 여러 가지 향을 추가로 하여 체리까지, 위스키가 강하고 독한 향으로 거부감이 있으시다면 이 칵테일로 위스키와 조금은 더 친해질 수 있을 것 같습니다.

오늘 문제는 문자열을 정수로 바꾸기입니다.

 

문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요.

 

 

언어 선택: JAVA, C#, C++, GO, JS, Kotlin, Python2, Python3, Ruby, Scala, Swift

 

[링크]

programmers.co.kr/learn/courses/30/lessons/12925

 

코딩테스트 연습 - 문자열을 정수로 바꾸기

문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. 제한 조건 s의 길이는 1 이상 5이하입니다. s의 맨앞에는 부호(+, -)가 올 수 있습니다. s는 부호와 숫자로만 이루어져있습니

programmers.co.kr

 

 

문제의 조건에 잘못된 입력도 없고, 부호만 + / - 로 붙을 수 있다고 하여 먼저 시스템 함수 중 Parse가 돌아가는지 확인을 해 보았는데 풀렸습니다.;;

 

<소스코드 & 결과>

 

 

이 외에도 다른분들의 풀이를 확인해보니, 문자열을 배열로 읽어와서 반복문 처리하여 반복하는 동안 자릿수 별로 10씩 반복하여 곱해 숫자를 반환하는 경우도 있었습니다.

20.11.01. 슬로바키아에서 코로나 검사를 받았습니다.

 

슬로바키아는 현재, 한국 인구의 1/9 수준인 약 500만 명의 전국의 인구와 한반도의 1/4 면적 정도의 나라이지만 일 확진자 수가 한국의 20~30배에 육박하는 3천여 명의 수준에 다다르자, 20.10.31(토), 20.11.01(일) 2일간 전 국민 대상으로 코로나 검사를 실시하였습니다.

 

 

 

제가 머물렀던 질리나에는 2곳의 진료소가 있었고, 머물던 호텔 바로 옆에 있던 어느 초등학교로 갔습니다.

울타리 건너로 보이는 초등학교입니다.

 

 

 

 

전날에는 줄이 엄청 길어서 그냥 조식 먹고 받으려다가 현명한 분의 선택으로 다음날 같이 받기로 했었고, 그다음 날이 되어 와 보니 1명 기다리고 계셨습니다.

 

근데 그마저도 사실 줄을 서려고 갔더니 경찰관과 이야기하는 행인이셨습니다.

 

 

 

 

 

 

 

 

 

검사소 내부 모습

우선 임시로 초등학교 건물에 준비를 하여 검사를 하고 있습니다.

 

 

 

내부에는 적절히 간격을 둘 수 있도록 표시가 되어있습니다.

 

 

 

 

거리두기 (2m) 관련 내용도 쓰여있지만.. 슬로바키아어를 읽을 수 없는 관계로 사진만 남겼습니다.

 

 

 

계단을 올라와 학생들의 작품을 보았습니다.

 

 

 

학생들의 실력이 초등학생이라고 믿기지가 않네요.

 

 

 

검사받은 사람들의 정보를 기록합니다.

 

저는 대사관에 미리 확인하고 전날 검사받은 분의 조언까지 확인하여 필요한 정보 대부분을 적어서 바로 보여드렸습니다.

 

 

 

 

 

검사가 진행 중이지 않은 검사 공간이었습니다.

 

검사를 진행해주시는 분은 두 분 이서 분업을 하셨고, 키트의 면봉 같은 도구로 코 깊숙이 정말 깊이 목까지 넣는 느낌으로,,, 눈물이 찔끔 날 뻔 한 건 비... 밀로 하고 싶을 정도로 묘하고 킁킁... 이상한 기분이었습니다.

 

 

사진도 저의 멘털도 흔들흔들~

 

 

 

 

 

 

검사 대기 중에 창 밖 풍경을 찍었는데, 어제는 대기자도 많아서 건물 밖에서 저 의자에 앉아 기다렸다고 합니다.

 

 

 

 

 

 

기다리면서 보았던 학생들의 또 다른 작품들..

 

 

검사는 대기가 가장 길었고 대략 25분 정도 기다린 듯할 때, 번호를 불러주시고, 34번이 불리는 것을 확인한 후 35를 여러 번  슬로바키아어로 듣고 있었는데, 어느 의료 인분께서 직접 웃는 얼굴로 전달을 해 주셨습니다.

 

여유가 있어서인지, 준비를 깔끔히 해 간 덕분인지....

 

아니면 영어만 써서 35를 못 알아들을 것이라 생각해서인지는 모르지만, 그 친절함에 감사할 뿐이었습니다.

 

그리고 확인한 결과는 양성을 양성 이렇게 굵은 매직으로 그어주셨습니다.

 

 

 

<검사 결과서>

즉, 음성!!! 음!!! 음성 판정을 받았습니다.

 

이제 슬로바키아에서 어느 정도 걱정을 덜 하고 돌아다닐 수는 있게 되었지만 상황이 상황인 만큼 몸도 생각하고, 조심을 하며 지내야겠다는 생각이 들었습니다.

오늘의 문제!

 

수박수박수박수박수박수?

 

언어 선택: JAVA, C#, C++, GO, JS, Kotlin, Python2, Python3, Ruby, Scala, Swift

 

[링크]

programmers.co.kr/learn/courses/30/lessons/12922

 

코딩테스트 연습 - 수박수박수박수박수박수?

길이가 n이고, 수박수박수박수....와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 수박수박을 리턴하고 3이라면 수박수를 리턴하면 됩니다. 제한 조

programmers.co.kr

 

오늘의 문제는 입력받는 수를 길이로 하는 수박수박수박...

 

"수"와 "박"이 번갈아 가며 나오는 문자열을 만드는 문제입니다.

 

 

문자열의 길이를 확인하고, 처리하는 것이고 간단한 반복문과 조건문으로도 처리를 할 수 있는 문제입니다.

 

 

 

생각나는 편한 방법으로는 2로 나눠서  "수박"이라는 문자열을 for문을 통해 반복해서 처리하고, 입력받은 길이가 홀수이면, "수"라는 문자열을 하나 더하여 반환하도록 처리하였습니다.

 

 

 

 

 

 

<소스 코드>

 

 

 

 

<실행 결과>

 

오늘의 문제는 문자열 다루기 기본.

 

https://project100.kakao.com/project/6451/activity/1321102

 

카카오프로젝트100

당신의 습관이 되다, 카카오프로젝트100

project100.kakao.com

 

언어 선택: JAVA, C#, C++, GO, JS, Kotlin, Python2, Python3, Ruby, Scala, Swift

 

[링크]

programmers.co.kr/learn/courses/30/lessons/12918

 

코딩테스트 연습 - 문자열 다루기 기본

문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 a234이면 False를 리턴하고 1234라면 True를 리턴하면 됩니다. 제한 사항 s는 길이 1 이

programmers.co.kr

 

우선 문자열의 길이를 확인하는 것과 숫자로만 되어있는지를 확인하는 문제였습니다.

 

먼저 숫자로 변환이 가능한지를 System에서 제공하는 함수를 사용하여 확인하였습니다.

 

그리고 길이는 4 or 6인지를 확인하여, 위에서 확인한 숫자로 변환까지 가능한지를 조건으로 확인하여 값을 반환하도록 처리하였습니다.

 

 

<소스 코드>

 

 

 

<수행 결과>

이상입니다.

+ Recent posts