IT/TIL(127)
-
20240521_평행사변형(백준 1894: 4번째 점 (C#))
오늘의 TIL은 도형 중의 평행사변형의 성질에 관한 내용이다. https://www.acmicpc.net/problem/1894백준 알고리즘 문제 1894번 4번째 점 문제를 풀이하는데평행사변형의 성질을 이용해서 풀이하는 것이 용이해서 정리하게 되었다. 문제는 8개의 실수로 주어지는 두 변의 좌표가 주어질 때나머지 한 점의 좌표를 알아내는 것이다.(총 4개의 점의 좌표가 주어지지만,한 점은 중복되어 주어지므로 주어지는 총 좌표의 수는 3개이다) 예를 들어 위처럼 평행사변형이 주어진 경우,AD의 길이는 AB의 길이 + AC의 길이이다. (벡터의 덧셈)점 D의 위치는 점 B와 C의 위치에서 A를 빼면 구할 수 있다.따라서D = B + C - A로 정리할 수 있다. 따라서 문제를 풀이하면 아래와 같이 코드를..
2024.05.21 -
20240513_C#에서 숫자 표기 관련
오늘의 TIL은 C#에서 연산을 하는 과정에서 숫자를 표기하는 것과 관련된 내용이다. https://www.acmicpc.net/problem/1964백준 알고리즘 문제 1964번 오각형, 오각형, 오각형… 문제를 푸는 과정에서 겪은 내용인데 위와 같이 각 단계마다 5각형의 꼭지점을 찍어나갈 때,각 단계의 점의 개수를 묻는 문제이다. 이 문제의 일반항을 구해보면a1 = 5a2 = 12a3 = 22a4 = 35a5 = 51a6 = 70 위와 같은 방식으로 점의 개수가 늘어나고공차가 등차수열인 수열인 것을 알 수 있다.이를 가지고 일반항을 구하면 아래와 같이 표기할 수 있다. 이를 풀면와 같이 일반항을 구할 수 있다. 따라서 코드를 작성하면 아래와 같이 작성할 수 있다.namespace _1964{ ..
2024.05.13 -
20240511_택시 기하학
오늘의 TIL은 택시 기하학의 내용이다. 백준 알고리즘 문제 3053(택시 기하학)를 풀다가 접하게 된 개념으로문제 자체는 간단한 내용의 문제였지만,개념적으로 이해하는 부분이 어려움이 있어서 정리하게 되었다. 택시 기하학의 가장 기본적인 개념은 두 점의 거리를 계산하는 방법이 아래와 같다는 것이다.유클리드 기하학에서 두 점 A(x1, y1)과 B(x2, y2)의 거리를 구하는 방법은피타고라스 정리를 이용하여 위와 같이 구할 수 있다. 하지만 택시 기하학에서는 이러한 대각선을 이용하지 않고가로와 세로만을 이용하므로 아래와 같이 구할 수 있다. 따라서 택시 기하학의 정의에 따른 원의 개념이 우리가 알고 있는 원과 다른데,원이라는 개념은 평면 상의 어떤 점에서 거리가 일정한 점들의 집합을 의미하므로,유클리드..
2024.05.11 -
20240402_StringBuilder
오늘의 TIL은 C#에서 String을 다룰 때 사용되는 StringBuilder에 대한 내용이다. StringBuilder(이하 SB)란 SB는 String(문자열)을 Build(건축)하는 것으로 문자열을 수정할 때 사용되는 클래스이다. C#에서 String은 직접 수정할 수 없다. String의 값을 수정하는 경우에 기존의 String에 해당하는 값은 삭제하고 새로운 값을 생성하여 String에 연결하므로(값 형식의 특징) String의 값을 빈번하게 수정하는 경우에는 이로 인해 GC가 많이 발생하게 된다. 하지만 SB는 값을 수정하는 경우에 새로운 값을 생성하지 않고 SB 내부에서 값을 수정할 수 있게 만들어진 클래스이다. 따라서 SB를 사용하면 불필요한 중간 값을 생성하지 않으므로 GC가 발생하지..
2024.04.02 -
20240329_금과 은 운반하기(프로그래머스)
오늘의 TIL은 금과 은 운반하기라는 프로그래머스의 문제에 대한 내용이다. 문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/86053 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 어느 왕국에 하나 이상의 도시들이 있다. 도시를 짓기 위해서는 도시를 짓는 장소에 금 a(kg)과 은 b(kg)이 전달되어야 한다. 각 도시에는 번호가 매겨져 있는데, i번 도시에는 금 g[i](kg), 은 s[i](kg), 그리고 트럭 한 대가 있다. i번 도시의 트럭은 오직 새 도시를 짓는 건설 장..
2024.03.30 -
20240328_A로 B 만들기(프로그래머스)
오늘의 TIL은 A로 B만들기라는 프로그래머스의 문제에 대한 내용이다. 문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/120886 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 문자열 before와 after가 매개변수로 주어질 때, before의 순서를 바꾸어 after를 만들 수 있으면 1을, 만들 수 없으면 0을 return하시오. 제한 조건 0 < before의 길이 == after의 길이 < 1,000 before와 after는 모두 소문자로 이루어져 있다. 해결 방안..
2024.03.28