본문 바로가기

전체 글

(123)
[ 프로그래머스 ] Level 2 다음 큰 숫자 - Java (자바) 자바도 필터 어쩌고가 있었던거 같은데 그거 쓰면 편할 거 같은데, 사용해서 좋은 함수는 Integer.toBinaryString(number); // 2진수 문자열로 바꿔준다. 여기에서 1의 개수를 찾으며 탐색하면 풀수 있다. 더 쉬운 방법이 있을 것 같지만 푸는게 중요하지... 문제 설명 더보기 문제 설명 자연수 n이 주어졌을 때, n의 다음 큰 숫자는 다음과 같이 정의 합니다. 조건 1. n의 다음 큰 숫자는 n보다 큰 자연수 입니다. 조건 2. n의 다음 큰 숫자와 n은 2진수로 변환했을 때 1의 갯수가 같습니다. 조건 3. n의 다음 큰 숫자는 조건 1, 2를 만족하는 수 중 가장 작은 수 입니다. 예를 들어서 78(1001110)의 다음 큰 숫자는 83(1010011)입니다. 자연수 n이 매개변..
[ 프로그래머스 ] Level 2 - 연습문제 : 올바른 괄호 ( Java : 자바) 쉬운 문제 풀면 기분이 좋그든여~~ stack을 사용하면 간단하게 풀리는 문제 이다. 문제 설명 더보기 문제 설명 괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 ()() 또는 (())() 는 올바른 괄호입니다. )()( 또는 (()( 는 올바르지 않은 괄호입니다. '(' 또는 ')' 로만 이루어진 문자열 s가 주어졌을 때, 문자열 s가 올바른 괄호이면 true를 return 하고, 올바르지 않은 괄호이면 false를 return 하는 solution 함수를 완성해 주세요. 제한사항 문자열 s의 길이 : 100,000 이하의 자연수 문자열 s는 '(' 또는 ')' 로만 이루어져 있습니다. 입출력 예 sanswer ()() true ..
[ 프로그래머스 ] Level 2 - 튜플 ( python : 파이썬) 문제 설명 : https://programmers.co.kr/learn/courses/30/lessons/64065?language=python3 코딩테스트 연습 - 튜플 "{{2},{2,1},{2,1,3},{2,1,3,4}}" [2, 1, 3, 4] "{{1,2,3},{2,1},{1,2,4,3},{2}}" [2, 1, 3, 4] "{{4,2,3},{3},{2,3,4,1},{2,3}}" [3, 2, 4, 1] programmers.co.kr 이전 글인 java에서 파이썬으로 바꾸기만 한 코드이다. 잘하는 사람들은 슉슉 filter로 바꿀거 같은데.. def solution(s): answer = [] s = s.replace("{", "") strs = [i for i in s.split("}") if ..
[ 프로그래머스 ] Level 2 - 튜플 ( Java : 자바 ) 진짜 이문제 문제 이해 때문에 죽을 뻔 했다... 왜 문제 이렇게 써놨어.. 튜플은 비록 중복인 값이 들어갈 수 있지만 이 문제의 튜플에는 중복이 없다.. 문제 설명 더보기 문제 설명 셀수있는 수량의 순서있는 열거 또는 어떤 순서를 따르는 요소들의 모음을 튜플(tuple)이라고 합니다. n개의 요소를 가진 튜플을 n-튜플(n-tuple)이라고 하며, 다음과 같이 표현할 수 있습니다. (a1, a2, a3, ..., an) 튜플은 다음과 같은 성질을 가지고 있습니다. 중복된 원소가 있을 수 있습니다. ex : (2, 3, 1, 2) 원소에 정해진 순서가 있으며, 원소의 순서가 다르면 서로 다른 튜플입니다. ex : (1, 2, 3) ≠ (1, 3, 2) 튜플의 원소 개수는 유한합니다. 원소의 개수가 n개이..
[ 프로그래머스 ] 단체사진 찍기 - Lv.2 ( 자바 ) 문제 설명 더보기 문제 설명 단체사진 찍기 가을을 맞아 카카오프렌즈는 단체로 소풍을 떠났다. 즐거운 시간을 보내고 마지막에 단체사진을 찍기 위해 카메라 앞에 일렬로 나란히 섰다. 그런데 각자가 원하는 배치가 모두 달라 어떤 순서로 설지 정하는데 시간이 오래 걸렸다. 네오는 프로도와 나란히 서기를 원했고, 튜브가 뿜은 불을 맞은 적이 있던 라이언은 튜브에게서 적어도 세 칸 이상 떨어져서 서기를 원했다. 사진을 찍고 나서 돌아오는 길에, 무지는 모두가 원하는 조건을 만족하면서도 다르게 서는 방법이 있지 않았을까 생각해보게 되었다. 각 프렌즈가 원하는 조건을 입력으로 받았을 때 모든 조건을 만족할 수 있도록 서는 경우의 수를 계산하는 프로그램을 작성해보자. 입력 형식 입력은 조건의 개수를 나타내는 정수 n과 ..
[ 백준 / 14503번 ] Gold V - 로봇 청소기 - 자바 ( java) 문제 설명 더보기 로봇 청소기 성공분류 Gold V 구현시뮬레이션 난이도 제공: solved.ac — 난이도 투표하러 가기 시간 제한메모리 제한제출정답맞은 사람정답 비율 2 초 512 MB 21674 11344 7341 51.325% 문제 로봇 청소기가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오. 로봇 청소기가 있는 장소는 N×M 크기의 직사각형으로 나타낼 수 있으며, 1×1크기의 정사각형 칸으로 나누어져 있다. 각각의 칸은 벽 또는 빈 칸이다. 청소기는 바라보는 방향이 있으며, 이 방향은 동, 서, 남, 북중 하나이다. 지도의 각 칸은 (r, c)로 나타낼 수 있고, r은 북쪽으로부터 떨어진 칸의 개수, c는 서쪽으로 부터 떨어진 칸의 개수이다. 로봇 청소기는 다음과 같이 작동한..
[ 프로그래머스 ] level 4 - 스티커 모으기(2) - 파이썬 이건 메모이제이션으로 간단하게 풀 수 있는 문제라 파이썬으로 변경해봤다. 자바 다 부질없는데 부질있는 딜레마를 겪고 있다. 이걸로 유입이나 많았으면 하는 기대를 하고 있다.ㅠㅜㅠㅜ 문제 설명 더보기 문제 설명 N개의 스티커가 원형으로 연결되어 있습니다. 다음 그림은 N = 8인 경우의 예시입니다. 원형으로 연결된 스티커에서 몇 장의 스티커를 뜯어내어 뜯어낸 스티커에 적힌 숫자의 합이 최대가 되도록 하고 싶습니다. 단 스티커 한 장을 뜯어내면 양쪽으로 인접해있는 스티커는 찢어져서 사용할 수 없게 됩니다. 예를 들어 위 그림에서 14가 적힌 스티커를 뜯으면 인접해있는 10, 6이 적힌 스티커는 사용할 수 없습니다. 스티커에 적힌 숫자가 배열 형태로 주어질 때, 스티커를 뜯어내어 얻을 수 있는 숫자의 합의 최..
[ 프로그래머스 ] level 4 - 스티커 모으기(2) ( Java ) 자바는 별로 인기가 없나보다... 근데 기업들은 자바 찾으니 파이썬에서 자바로 갈아타고 개 후회중인데, 이미 메인 알고리즘 학습 다 이걸로 해서 뭐 갈아탈수도 없고 화난당... 후.. 그래도 계속 풀어본다... 요새 연습하는게 에디터 없이 푸는건데.. java 에디터 없이 풀기 죽을 맛이다. 그래도 이문제는 길지 않아서 다행이다..ㅠㅜㅠㅜ 문제설명 더보기 문제 설명 N개의 스티커가 원형으로 연결되어 있습니다. 다음 그림은 N = 8인 경우의 예시입니다. 원형으로 연결된 스티커에서 몇 장의 스티커를 뜯어내어 뜯어낸 스티커에 적힌 숫자의 합이 최대가 되도록 하고 싶습니다. 단 스티커 한 장을 뜯어내면 양쪽으로 인접해있는 스티커는 찢어져서 사용할 수 없게 됩니다. 예를 들어 위 그림에서 14가 적힌 스티커를 ..