본문 바로가기

분류 전체보기

(81)
[TIL]2024-2-21 / 41일차 - 심화 주차 3일차 1.오늘의 알고리즘 코드카타 - 두 개 뽑아서 더하기 답안 : using System; using System.Collections.Generic; //List를 위함 using System.Linq; //Distinct를 위함
[TIL]2024-2-20 / 40일차 - 심화 주차 2일차 1. 오늘의 알고리즘 코드카타 - k번째수 답안 : //주의 : commands는 2차원 배열 using System; public class Solution { public int[] solution(int[] array, int[,] commands) { //commands를 2차원 배열의 행 갯수만큼 asnswer 배열 초기화 int[] answer = new int[commands.GetLongLength(0)]; //GetLongLength = https://learn.microsoft.com/en-us/dotnet/api/system.array.getlonglength?view=net-8.0 //0부터 commands 2차원 배열의 행 갯수까지 반복 for(int n = 0; n < comma..
[TIL]2024-2-19 / 39일차 - 심화 주차 시작 1. 오늘의 알고리즘 코드카타 - 문자열 내 마음대로 정렬하기 답안 : //배열 strings를 OrderBy()를 통해 정렬 //한번 더 OrderBy()를 사용하여 x[n]을 기준으로 정렬 //ToArray()로 다시 배열로 using System.Linq; public class Solution { public string[] solution(string[] strings, int n) { string[] answer = new string[] {}; answer = strings.OrderBy(x => x).OrderBy(x => x[n]).ToArray(); return answer; } Linq를 사용하면 생각보다 쉽다. 2. 오늘의 공부 오늘은 그사이 정들은 팀과 아쉽게도 헤어지며 새로 팀이..
[TIL]2024-2-16 / 38일차 - 팀 과제 마무리 1. 오늘의 알고리즘 코드카타 - 숫자 문자열과 영단어 답안 : //String.Replace 메서드를 알게 되었다... //단순 노가다 가즈아 using System; public class Solution { public int solution(string s) { int answer = 0; s = s.Replace("zero", "0"); s = s.Replace("one", "1"); s = s.Replace("two", "2"); s = s.Replace("three", "3"); s = s.Replace("four", "4"); s = s.Replace("five", "5"); s = s.Replace("six", "6"); s = s.Replace("seven", "7"); s = s.Re..
[TIL]2024-2-15 / 37일차 - 팀 과제 4일차 1. 오늘의 알고리즘 코드카타 - 시저 암호 답안 : //이번에는 어느정도 구조는 생각이 나지만 //그걸 구현하는 방법을 모르겠어서 찾아보니 아스키 코드로 푸는 방법도 있었다. using System; public class Solution { public string solution(string s, int n) { string answer = ""; //문자열을 우선 char 배열로 저장 char[] arr = s.ToCharArray(); for(int i = 0; i < arr.Length; ++i) { //공백은 공백으로 남겨야함 if(arr[i] == ' ') continue; //n만큼 문자를 밀어내기 int num = Convert.ToInt32(arr[i]) + n; //대문자를 밀어낼 ..
[TIL]2024-2-14 / 36일차 - 팀 과제 3일차 1. 오늘의 알고리즘 코드카타 - 최소직사각형 답안: //이번엔 지금 수준에서 풀기 어려운 내용이다. //Math기능은 거의 다뤄본 적이 없어 인터넷을 찾아봐야 했으며 //풀이를 보고 공부한 내용을 정리하겠다. using System; public class Solution { public int solution(int[,] sizes) { int answer = 0; //가로와 세로 길이 중 최대값을 저장하는 함수 int max1 = 0; int max2 = 0; //배열 sizes를 순회하면서 가로와 세로 길이를 비교, 최댓값을 구함 for(int i = 0; i < sizes.GetLength(0); i++) { //명함 가로와 세로 길이 둘 중 더 큰 값을 Math.Max를 사용 비교, 큰 값이 ..
[TIL]2024-2-13 / 35일차 - 팀 과제 2일차 1. 오늘의 알고리즘 코드카타 - 크기가 작은 부분문자열 답안 : //제한 사항 p 길이를 보면 int 말고 long 필요 //p와 값을 비교시키기 위해선 long.Parse(p)와 비교 시켜야함 //세글자로 묶는걸 삼총사 풀이랑 비슷하게 해야하나 //Substring이란걸 찾았다. 이걸 써봐야 할지도. //필요사항 : //Substring은 배열에서 자를 위치 / 자를 길이를 받아야함 //자를 길이는 p.Length로 가능해보임. 자를 위치는? //t에서 p.Length만큼 묶이는게 멈출때까지 한글자씩 앞으로 가야함 -> 우선 for문으로 //마지막에 묶이고 멈추려면 t.Length에서 p.Length를 뺀 수치만큼 진행해야함. using System; public class Solution { pub..
[TIL]2024-2-08 / 34일차 - 숙련 주차 팀 과제 시작 1. 오늘의 알고리즘 코드카타 - 삼총사 답안 : //배열 자체에 이를 위한 기능은 없을까? //3중 for문으로 배열에 0, 1, 2 번째 부터 확인하면서 //if 조건문으로 i+j+K == 0 이 되는 상황을 찾는 것으로 가능할까 using System; public class Solution { public int solution(int[] number) { int answer = 0; for(int i = 0; i < number.Length; i++) for(int j = i + 1; j < number.Length; j++) for(int k = j + 1; k < number.Length; k++) if((number[i] + number[j] + number[k]) == 0) answer+..