링크 : https://www.hackerrank.com/challenges/countingsort4/problem 문제> 정수와 문자열로 이루어진 n개의 데이터를 정수값 오름차순으로 출력하는 문제. * 빠른 속도로 출력하되 첫 번째부터 절반은 인쇄하고 싶지 않다.( - )로 표기. 해결방법. *SortedDictionary사용. key값 기준으로 자동으로 정렬해준다. 입력 받을 때 정수를 key로 Value는 n/2 번째 보다 작으면 입력값은 문자열을 '-'로 저장. 그 외는 제대로 문자열을 입력받는다. SortedDictionary의 데이터를 순차로 돌면서 문자열을 합쳐준다. using System; using System.Collections.Generic; using System.IO; using..
링크 : https://www.hackerrank.com/challenges/utopian-tree/problem 문제> 유토피아 나무는 1년에 2주기로 성장한다. 봄에는 높이의 2배, 여름에는 1m 증가. 유토피아 나무의 키는 기본 1m이다. N은 성장주기 수. N주기 성장 후의 키는 몇인가? 해결방법. 기본 나무의 크기는 1로 시작. 주기가 0일 때는 성장하지 않기 때문에 기본크기 1을 반환. 1부터 n포함 주기까지 봄과 여름을 체크. 봄은 주기에서 홀수 번 째, 여름은 주기에서 짝수 번 째. 나무의 크기를 2로 나눈 나머지가 0보다 크면 봄.(홀수) 2로 나는 나머지가 0이면 여름.(짝수.) 봄일 때는 기본 크기 * 2를 여름일때는 기본크기 + 1을 해준다. n까지 완료 후 반환. using Sys..
링크 : https://www.hackerrank.com/challenges/maximizing-xor/problem 문제> L부터 R까지의 쌍 중 xor값이 최대값인 값을 반환하라. 해결방법. l 부터 r까지 반복. l + 1부터 r포함 까지 반복.(l과 r이 같은 값은 xor값이 0이기 때문에 구할 필요 없다.) l과 r의 xor값을 받아 더 큰 값이 나오면 갱신. using System; using System.Collections.Generic; using System.IO; using System.Linq; class Solution { static int maximizingXor(int l, int r) { // Complete this function int max = 0; for(int i..
링크 : https://www.hackerrank.com/challenges/halloween-party/problem 문제> 알렉스와 실비아는 할로윈 파티에 참석했다. 파티에서 실비아는 무한 초콜릿바 (넓이와 길이가 무한히 긴 2차원적인 = 두줄로 된것을 말하는듯)를 발견. 초콜릿은 1x1크기의 조각만 제공되고 알렉스가 초콜렛바를 K번 자를 수 있다면 알렉스가 잘라내어 실비아에게 줄 수 있는 초콜릿 조각들의 최대 숫자를 구하라. 해결방법. 받아온 K를 2로 나눈다. (기본 2줄이기 때문에.) a = (K를 2로 나눈 값); b = K - a a * b이 초콜렛의 최대 수. using System; using System.Collections.Generic; using System.IO; class So..
링크 : https://www.hackerrank.com/challenges/angry-children/problem 문제> N개의 수 중, 작은 수 부터 K씩 묶었을 때 묶은 값에서 최대값과 최소값의 차가 가장 작은 값을 구하여라. 해결방법. * K를 배열에 사용하기 위해 -1을 해주었다. * 받은 배열을 정렬. * 누적값을 받을 변수는 int의 최대값으로 초기화해주었다. 기준값을 n(배열의 수) - K값까지 1씩 증가시키면서 Max(기준값 + K)번째와 Min(기준값)번째의 차와 기존 누적한 값과 비교해 더 작은값으로 누적값을 변환. using System; using System.Collections.Generic; using System.IO; class Solution { static void ..