본문 바로가기

Developer265

백준 2887번 행성 터널 문제 (Python) 백준 2887번 행성 터널 문제 (Python) 백준 2887번 행성 터널 문제를 Python를 사용하여 해결해 보도록 하겠습니다. 문제 때는 2040년, 이민혁은 우주에 자신만의 왕국을 만들었다. 왕국은 N개의 행성으로 이루어져 있다. 민혁이는 이 행성을 효율적으로 지배하기 위해서 행성을 연결하는 터널을 만들려고 한다. 행성은 3차원 좌표위의 한 점으로 생각하면 된다. 두 행성 A(xA, yA, zA)와 B(xB, yB, zB)를 터널로 연결할 때 드는 비용은 min(|xA-xB|, |yA-yB|, |zA-zB|)이다. 민혁이는 터널을 총 N-1개 건설해서 모든 행성이 서로 연결되게 하려고 한다. 이때, 모든 행성을 터널로 연결하는데 필요한 최소 비용을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 행.. 2022. 10. 13.
백준 1517번 버블 소트 문제 (Python) 백준 1517번 버블 소트 문제 (Python) 백준 1517번 버블 소트 문제를 Python를 사용하여 해결해 보도록 하겠습니다. 문제 N개의 수로 이루어진 수열 A[1], A[2], …, A[N]이 있다. 이 수열에 대해서 버블 소트를 수행할 때, Swap이 총 몇 번 발생하는지 알아내는 프로그램을 작성하시오. 버블 소트는 서로 인접해 있는 두 수를 바꿔가며 정렬하는 방법이다. 예를 들어 수열이 3 2 1 이었다고 하자. 이 경우에는 인접해 있는 3, 2가 바뀌어야 하므로 2 3 1 이 된다. 다음으로는 3, 1이 바뀌어야 하므로 2 1 3 이 된다. 다음에는 2, 1이 바뀌어야 하므로 1 2 3 이 된다. 그러면 더 이상 바꿔야 할 경우가 없으므로 정렬이 완료된다. 입력 첫째 줄에 N(1 ≤ N ≤.. 2022. 10. 12.
프로그래머스 Level1 2022 KAKAO TECH INTERNSHIP 문제 - 성격 유형 검사하기 (JavaScript) 프로그래머스 Level1 2022 KAKAO TECH INTERNSHIP 문제 - 성격 유형 검사하기 (JavaScript) Programmers(프로그래머스)의 코딩테스트 연습문제 Level 1 중 2022 KAKAO TECH INTERNSHIP 문제인, [성격 유형 검사하기] 문제를 JavaScript를 사용하여 해결해 보도록 하겠습니다. 문제 문제 설명 나만의 카카오 성격 유형 검사지를 만들려고 합니다. 성격 유형 검사는 다음과 같은 4개 지표로 성격 유형을 구분합니다. 성격은 각 지표에서 두 유형 중 하나로 결정됩니다. 지표 번호 성격 유형 1번 지표 라이언형(R), 튜브형(T) 2번 지표 콘형(C), 프로도형(F) 3번 지표 제이지형(J), 무지형(M) 4번 지표 어피치형(A), 네오형(N) 4.. 2022. 9. 30.
Ruby 함수 정의하는 방법 Ruby 함수 정의하는 방법 Ruby에서 함수를 정의하는 방법을 알려드리도록 하겠습니다. 기본적인 정의 방법 부터 다양한 예시로 준비해 보았습니다. def 함수이름(param1, param2) 함수 기능 작성 end 기본적으로 Ruby에서 함수를 정의하는 방법은 위 예시와 같습니다. 그럼 다양한 예시와 함께 Ruby에서 함수의 특징과 사용 방법에 대해 설명드리겠습니다. # 매개변수를 받지않는 함수라면 괄호 생략이 가능합니다. def func1 return "안녕하세요." end puts func1 # return을 생략하면 마지막 줄에 작성된 값을 반환합니다. def func2 "안녕하세요." end puts func2 # 매개변수의 default 값을 지정할 수 있습니다. def func3(age, n.. 2022. 9. 26.
Ruby n번 반복하는 방법 - Integer.times Ruby n번 반복하는 방법 - Integer.times Ruby에서 원하는 횟수만큼 반복문을 사용 하고싶을 때 사용하는 Integer.times 메소드 사용 방법에 대해 알려드리도록 하겠습니다. Integer.times 사용 방법 5.times { |i| puts i } # Output # 0 # 1 # 2 # 3 # 4 5.times do |i| puts "Index : #{i}" end # Output # Index : 0 # Index : 1 # Index : 2 # Index : 3 # Index : 4 n.times 를 사용하여 n번만큼 반복문을 사용할 수 있습니다. 이상으로 Ruby Integer.times 메소드 사용 방법에 대한 설명을 마치도록 하겠습니다. 도움이 되셨다면 공감, 댓글 .. 2022. 9. 23.
Ruby Hash 반복문 사용하는 방법 - Hash.each / Hash.each_pair / Hash.each_key / Hash.each_value Ruby Hash 반복문 사용하는 방법 - Hash.each / Hash.each_pair / Hash.each_key / Hash.each_value Ruby에서 Hash의 각 요소들로 반복문을 사용할 때 사용하는 Hash.each / Hash.each_pair / Hash.each_key / Hash.each_value 메소드의 사용 방법을 알려드리도록 하겠습니다. Hash.each / Hash.each_pair 사용 방법 hash = { key1: 1, key2: "abcd", key3: ["a", "b", "c"], key4: :df, key5: { k1: "v1" }, } p hash # Output # {:key1=>1, :key2=>"abcd", :key3=>["a", "b", "c"], :.. 2022. 9. 22.
Ruby Hash default value / default proc 사용하는 방법 Ruby Hash default value / default proc 사용하는 방법 Ruby에서 Hash를 사용할 때, default 값 혹은 default procedure를 지정하여 사용할 수가 있습니다. Ruby의 Hash에 default value 와 default proc 을 설정하는 방법을 알려드리도록 하겠습니다. default value 혹은 default proc 이 설정되지 않은 Hash hash = Hash.new p hash # {} p hash[:key1] # nil arr = ["a", "b", "c", "a", "a", "c"] arr.each do |v| hash[v] += 1 # [에러 발생] undefined method `+' for nil:NilClass (NoMetho.. 2022. 9. 21.
Ruby Hash 항목 개수 구하는 방법 - Hash.length Ruby Hash 항목 개수 구하는 방법 - Hash.length Ruby의 Hash에서 항목의 개수를 구할 때 사용하는 length 메소드를 알려드리도록 하겠습니다. Hash.length 사용 방법 hash1 = { key1: 1, key2: 2, key3: 3, key4: 4, key5: 5, } p hash1 # {:key1=>1, :key2=>2, :key3=>3, :key4=>4, :key5=>5} p hash1.length # 5 hash2 = {} p hash2 # {} p hash2.length # 0 hash에 [.length] 메소드를 사용하는 것으로 해당 hash의 길이를 정수로 얻을 수 있습니다. Hash.length -> Integer 로 표현할 수 있겠습니다. 이상으로 Ruby의.. 2022. 9. 20.
Ruby Hash 존재하는 모든 키 구하는 방법 - Hash.keys Ruby Hash 존재하는 모든 키 구하는 방법 - Hash.keys Ruby의 Hash에서 존재하는 모든 키를 구할 때 사용하는 keys 메소드를 알려드리도록 하겠습니다. Hash.keys 사용 방법 hash1 = { key1: 1, key2: 2, key3: 3, key4: 4, key5: 5, } p hash1 # {:key1=>1, :key2=>2, :key3=>3, :key4=>4, :key5=>5} p hash1.keys # [:key1, :key2, :key3, :key4, :key5] p hash1.keys.length # 5 hash2 = {} p hash2 # {} p hash2.keys # [] p hash2.keys.length # 0 hash에 [.keys] 메소드를 사용하는 것으.. 2022. 9. 19.
Ruby Hash 선언 방법 / Hash 초기화 방법 Ruby Hash 선언 방법 / Hash 초기화 방법 Ruby에서 Hash를 선언하는 방법, 초기화 하는 방법 몇가지를 예시로 보여드리면서 알려드리도록 하겠습니다. hash = {} p hash # {} hash = Hash.new p hash # {} key4 = :key4 key6 = "key6" key7 = [:key7, :key8] hash = { key0: 0, :key1 => 1, :"key2" => 2, "key3": 3, key4 => 4, "key5" => 5, key6 => 6, key7 => 7, } p hash # {:key0=>0, :key1=>1, :key2=>2, :key3=>3, :key4=>4, "key5"=>5, "key6"=>6, [:key7,.. 2022. 9. 16.
Ruby String sub / gsub / sub! / gsub! 사용 방법 (루비 문자열 치환하는 방법) Ruby String sub / gsub / sub! / gsub! 사용 방법 (루비 문자열 치환하는 방법) Ruby에서 문자열을 치환할 때 사용하는 메소드 sub / gsub / sub! / gsub! 의 사용 방법에 대해 알려드리도록 하겠습니다. sub 사용 방법 str = "공일공-일이삼-사오육-칠팔구" p str.sub("-", "/") # "공일공/일이삼-사오육-칠팔구" p str.sub(/[공일이삼사오육칠팔구]/, "X") # "X일공-일이삼-사오육-칠팔구" numbers = { "공" => "0", "일" => "1", "이" => "2", "삼" => "3", "사" => "4", "오" => "5", "육" => "6", "칠" => "7", "팔" => "8", "구" => "9", }.. 2022. 9. 15.
Ruby Array sort / sort_by / sort! / sort_by! 사용 방법 (루비 배열 정렬 방법) Ruby Array sort / sort_by / sort! / sort_by! 사용 방법 (루비 배열 정렬 방법) Ruby의 배열에서 정렬할 때 사용하는 sort / sort_by / sort! / sort_by! 메소드 사용 방법에 대해 알려드리도록 하겠습니다. sort 사용 방법 # 오름차순, 내림차순 정렬 예시 arr1 = [1, -24, 0, 48, -50, 100] p arr1 # [1, -24, 0, 48, -50, 100] p arr1.sort # [-50, -24, 0, 1, 48, 100] (오름차순) p arr1.sort { |a, b| b a } # [100, 48, 1, 0, -24, -50] (내림차순) # 문자열 사전순 정렬, 문자열 길이 정렬 예시 arr2 = ["안녕하세요".. 2022. 9. 14.