목록2025/02 (52)
Machineboy空
메소드 오버로딩이란?하나의 메소드 이름에 여러 개의 구현을 올리는 것메소드 호출 코드에 사용되는 파라미터의 수와 형식을 분석해서 알맞은 메소드 형식을 불러준다.int Plus(int a, int b){ return a + b;}double Plus(double a, double b){ return a + b;}int result1 = Plus(1,2); // int를 매개변수로 하는 위 함수를 호출double result2 = Plus(3.1,2.4); // double을 매개변수로 하는 아래 함수를 호출메소드 오버로드 규칙number of parameter 혹은 type of parameter 중 하나라도 달라야 한다.based on return type인 오버로딩 함수는 없다.오로지 파라미터로만..

문제요약주어진 행렬에 대한 열과 행의 정보를 출력하라.난이도Medium풀이 포인트입력값 원하는 대로 변환 (string 값 => 정수의 2차원 배열로)2차원 배열 사용https://machineboy0.tistory.com/305 C# 컬렉션 - 배열, 다차원 배열 - rank, getLength, Array.IndexOf(), Array.Sort()컬렉션(Collection)이란?data structures that can hold zero or more elements are known as collections0개 혹은 더 많은 요소를 가질 수 있는 데이터 구조배열(Array) 이란 ? + 특징컬렉션 중 하나fixed size, elements must all be omachineboy0.tisto..

1. 벡터의 내적 ( Dot Product )벡터 상에서 존재하는 특별한 연산 방법. 벡터의 연산기본 연산 벡터와 벡터의 덧셈벡터와 스칼라의 곱셈유용한 연산기본 연산이란?벡터 생성에 관여하는 중요한 연산선형 조합을 사용해 새로운 벡터를 생성했었다.유용한 연산의 종류벡터와 벡터의 곱 (a, b, c) · (d, e, f) = (ad, be, cf) : 색상 혼합에 많이 쓰임벡터의 내적 : 벡터의 응용에서 70-80은 쓰임벡터의 외적 (3차원에서만 성립)벡터의 내적 (Dot Product)N차원으로 늘어나도 같은 차원끼리 곱하고 더하는 방식으로 동작.결과값은 항상 스칼라(a,b) · (c,d) = ac + bd 벡터의 내적의 성질 유용한 벡터 내적의 식(u + v) · (u + v) = u · u + v..

문제요약주어진 수를, span길이로 쪼개어 담고, 그 수의 곱 중 가장 큰 값을 반환하라. https://exercism.org/tracks/csharp/exercises/largest-series-product/edit ExercismLearn, practice and get world-class mentoring in over 50 languages. 100% free.exercism.org난이도Medium풀이 포인트LINQ사용연습AnySelectMaxSkip.TakeAggregateREVIEW 문제 자체는 쉬워서 Substring으로 금방 풀었으나, LINQ 연습하기 좋아보여서 기록.LINQ는 도무지 익숙해지지가 않는다.. CODEusing System;using System.Linq;public ..

1. 아핀 공간(Affine Space)이동 변환의 문제점왜 아핀 공간이 필요한가? 컴퓨터 그래픽스에서 이동 기능을 빼놓을 수 없는데앞선 선형변환을 이용해 이동을 구현할 수 없다.왜냐면 원점에서부터 시작하는 벡터의 특성상 기저벡터를 원점으로부터 분리해 이동시킬 수 없기 때문즉 다음과 같은 행렬은 존재하지 않는다.밀기 변환의 활용하지만 밀기 변환을 살짝 변형하면 이동기능을 구현할 수 있다!밀기 변환을 활용해 선형 변환의 형태로 이동을 구현하는 것이 가능하다. 평면의 이동 변환2차원의 밀기 변환을 통해 1차원의 이동을 구현했듯,3차원의 공간에서 평면을 밀면 평면의 이동 구현이 가능해 진다!수식으로 나타내면 다음의 3차원 정방 행렬을 사용하면 원하는 만큼 2차원 평면의 이동 구현이 가능해진다.위와 같이 계산한..

1. 역행렬(Inverse Matrix)행렬은 큰 관점에서 선형변환을 시키는 함수의 개념이기 때문에 역행렬도 역함수에 대응해 생각할 수 있다.항등 행렬(Identity Matrix)* 항등 함수 = 정의역과 치역의 결과물이 같은 것 선형 변환의 결과가 변함없는 행렬.두 표준 기저벡터 e1, e2의 값이 동일하게 유지되는 선형 변환을 의미한다.역행렬이란?선형 변환된 결과를 거꾸로 돌려주는 선형 변환. 이를 합성한 결과는 항등 변환이 된다.2. 역행렬의 계산 방법행렬식(Determinant)아래 연립방정식의 해는 존재하지 않는다.ad-bc = 0이 되고, 이는 해가 없음을 의미한다. 어째서인가?위 변환을 분석하면 표준기저벡터 e1, e2는 각각(2,1),(1,0.5)로 변환되었는데,이 둘은 같은 기울기를 가..
문제요약3,5,7의 배수인지 살피고 조건에 맞는 문자를 출력하라! 난이도Easy풀이 포인트나는 Flag로 중복을 방지했다모범 풀이는 애초에 정해진 길이의 StringBuilder를 사용했다.REVIEW 이런 난이도가 쉬운 문제는 아이디어에 따라 꽤 코드가 달라진다.나는 Flag로 해당 조건이 이미 만족되었는지를 체크했다. 45줄은 된다.그런데 모범 풀이는 더욱 가독성 좋게 15줄로 해결했다..그래서 기록해둔다!CODEusing System.Globalization;using System.Text;public static class Raindrops{ public static string Convert(int number) { var drops = new StringBuilder(1..

문제요약주어진 key에 맞게 원본 문자열을 변형시킨 암호를 출력하라.난이도Medium풀이 포인트random 키 생성아스키 코드 활용문제 이해REVIEW 문제 이해를 한참 못했다.Step 2 그러니까 a: 0 , d:3 의 식으로 암호에 따른 shift가 어떻게 이루어진다는 것인지 이해하는 데 오래 걸렸다.그리고 순환되는 값에는 나머지를 잘 활용해야한다는 것! 또 명심. 뭔가 익숙해진듯, 계속 까먹는 아이디어들이 생긴다.CODEusing System;public class SimpleCipher{ private string key; // 기본 생성자 (랜덤 키 생성) public SimpleCipher() { Random rand = new Random(); ..