코딩 테스트 맨텀 2023. 4. 12. 23:51
출처: 프로그래머스 코딩 테스트 연습 https://school.programmers.co.kr/learn/courses/30/lessons/160585 나의 풀이 public int solution(string[] board) { int count_O = 0; int count_X = 0; for(int y = 0; y count_X + 1) return 0; // 후공은 선공보다 많을 수 없다. if(count_X > count_O)..
코딩 테스트 맨텀 2023. 4. 11. 22:23
출처: 프로그래머스 코딩 테스트 연습 https://school.programmers.co.kr/learn/courses/30/lessons/172927 나의 코드 public int solution(int[] picks, string[] minerals) { int[,] pickCost = new int[3, 3]{ {1, 1, 1}, {5, 1, 1}, {25, 5, 1} }; int[] mineralIndexs = new int[minerals.Length]; for(int i = 0; i < minerals.Length; ++i) { switch(minerals[i]) { case "diamond": mineralIndexs[i] = 0; break; case "iron": mineralIndex..
코딩 테스트 맨텀 2023. 4. 9. 18:42
출처: 프로그래머스 코딩 테스트 연습 https://school.programmers.co.kr/learn/courses/30/lessons/134239 나의 풀이 public double[] solution(int k, int[,] ranges) { var dots = new List(); dots.Add((0, k)); int i = 1; while(k > 1) { if(k % 2 == 0) k = k / 2; else k = k * 3 + 1; dots.Add((i, k)); ++i; } var answer = new double[ranges.GetLength(0)]; for(int j = 0; j < ranges.GetLength(0); ++j) { int left = ranges[j, 0]; i..
코딩 테스트 맨텀 2023. 4. 8. 11:40
출처: 프로그래머스 코딩 테스트 연습 https://school.programmers.co.kr/learn/courses/30/lessons/178871 나의 풀이 public string[] solution(string[] players, string[] callings) { var dict = players.Select((s, i) => new{name = s, index = i}) .ToDictionary(d => d.name, d => d.index); foreach(string call in callings) { int rank = dict[call]; // 추월하려는 사람의 순위 string overtaken = players[rank - 1]; // 추월당한 사람의 이름 players[ran..
코딩 테스트 맨텀 2023. 4. 7. 13:44
출처: 프로그래머스 코딩 테스트 연습 https://school.programmers.co.kr/learn/courses/30/lessons/178870 1차 시도 public int[] solution(int[] sequence, int k) { int start = 0; int end = 0; int minLength = int.MaxValue; int currentSum = 0; for(int i = 0; i sequence.Length - i ? sequence.Length - i : minLength; for(int offset = 0; offset < maxOffset;..
코딩 테스트 맨텀 2023. 4. 6. 13:28
출처: 프로그래머스 코딩 테스트 연습 https://school.programmers.co.kr/learn/courses/30/lessons/42860 1차 시도 public int solution(string name) { int answer = int.MaxValue; bool[] visited = name.Select(s => s == 'A').ToArray(); // A 는 방문안해도 됨 Greedy(name, visited, 0, 0, ref answer); return answer; } private void Greedy(string name, bool[] visited, int cur, int count, ref int answer) { if(!visited[cur]) // A 면 이미 vi..