본문 바로가기
반응형

개발일지29

[programmers] 가장 큰 정사각형 찾기(C#) 문제 설명1와 0로 채워진 표(board)가 있습니다. 표 1칸은 1 x 1 의 정사각형으로 이루어져 있습니다. 표에서 1로 이루어진 가장 큰 정사각형을 찾아 넓이를 return 하는 solution 함수를 완성해 주세요. (단, 정사각형이란 축에 평행한 정사각형을 말합니다.)예를 들어12340111111111110010가 있다면 가장 큰 정사각형은12340111111111110010가 되며 넓이는 9가 되므로 9를 반환해 주면 됩니다.제한사항표(board)는 2차원 배열로 주어집니다.표(board)의 행(row)의 크기 : 1,000 이하의 자연수표(board)의 열(column)의 크기 : 1,000 이하의 자연수표(board)의 값은 1또는 0으로만 이루어져 있습니다.입출력 예boardanswer[.. 2022. 6. 23.
[programmers] 나머지 한 점(C#) 문제 설명직사각형을 만드는 데 필요한 4개의 점 중 3개의 좌표가 주어질 때, 나머지 한 점의 좌표를 구하려고 합니다. 점 3개의 좌표가 들어있는 배열 v가 매개변수로 주어질 때, 직사각형을 만드는 데 필요한 나머지 한 점의 좌표를 return 하도록 solution 함수를 완성해주세요. 단, 직사각형의 각 변은 x축, y축에 평행하며, 반드시 직사각형을 만들 수 있는 경우만 입력으로 주어집니다.제한사항v는 세 점의 좌표가 들어있는 2차원 배열입니다.v의 각 원소는 점의 좌표를 나타내며, 좌표는 [x축 좌표, y축 좌표] 순으로 주어집니다.좌표값은 1 이상 10억 이하의 자연수입니다.직사각형을 만드는 데 필요한 나머지 한 점의 좌표를 [x축 좌표, y축 좌표] 순으로 담아 return 해주세요.입출력 예.. 2022. 6. 23.
[Programmers] 순열 검사(C#) 문제 설명길이가 n인 배열에 1부터 n까지 숫자가 중복 없이 한 번씩 들어 있는지를 확인하려고 합니다.1부터 n까지 숫자가 중복 없이 한 번씩 들어 있는 경우 true를, 아닌 경우 false를 반환하도록 함수 solution을 완성해주세요.제한사항배열의 길이는 10만 이하입니다.배열의 원소는 0 이상 10만 이하인 정수입니다.입출력 예arrresult[4,1,3,2]true[4,1,3]false입출력 예 설명입출력 예 #1입력이 [4, 1, 3, 2]가 주어진 경우, 배열의 길이가 4이므로 배열에는 1부터 4까지 숫자가 모두 들어 있어야 합니다. [4, 1, 3, 2]에는 1부터 4까지의 숫자가 모두 들어 있으므로 true를 반환하면 됩니다.입출력 예 #2[4, 1, 3]이 주어진 경우, 배열의 길이가.. 2022. 6. 23.
[programmers] 자릿수 더하기(C#) 문제 설명자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요.예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다.제한사항N의 범위 : 100,000,000 이하의 자연수입출력 예Nanswer123698724입출력 예 설명입출력 예 #1문제의 예시와 같습니다.입출력 예 #29=8=7=24이므로 24를 return하면 됩니다. 내가 사용한 코드using System;public class Solution { public int solution(int n) { int answer = 0; string str = n.ToString(); //문자열로 변환 foreach(var num i.. 2022. 6. 23.
[C#] 델리게이트(delegate) - 델리게이트, 콜백 사용 방법 및 사용 이유 델리게이트란? 대리자 라는 뜻으로 c++의 함수 포인터와 비슷한 개념을 가지고 있다. 포인터의 설명은 위와 같다고 보면된다. 솔직히 정말 잘 정리한듯,,, 함수 포인터는 함수식을 인스턴스의 포인터처럼 인식을 해서 변수에 값을 저장하거나 파라미터로 넘겨서 실행하는 대리자이다. 그리고 델리게이트는 자체적으로 리스트 기능이 있다. +=, -=같은 대입연산자를 통해 추가 및 제거가 가능하다. 선언 방법은 다음과 같다 delegate 반환타입 델리게이트이름 (매개변수) 함수 선언 방법과 동일하게 선언을 한다. 델리게이트 사용방법은 아래와 같다. 델리게이트 샘플 코드 using System; namespace MyApp // Note: actual namespace depends on the project name.. 2022. 6. 16.
[UNITY] 코루틴이란? 코루틴이란? 코루틴은 동시성 프로그래밍을 가능케 하도록 만든 개념(동시에 발생하지는 않는다.)으로 쓰레드와 비교가 많이 되지만 함수이다. 별도의 쓰레드 없이 메인 쓰레드 상에서 별도의 쓰레드가 있는것 처럼 번갈아 가며 병렬처리나 유사한 동작을 수행할 수 있다. 쓰레드와 비슷하게 동시성을 보장하기위한 기술이다. 하지만 쓰레드와 코루틴은 다른 개념이다. 여러개의 작업을 동시에 수행할 때 Thread는 각 작업에 해당하는 메모리 영역을 할당하는데, 여러 작업을 동시에 수행해야 하므로 OS레벨에서 스케쥴링을 필요로 한다. 코루틴은 lightweight Thread라고 불리며 작업을 효율적으로 분배하여 수행함에 있어 각 작업에 대해 Thread할당이 아닌 Object만을 할당하고, 이 Object를 자유자재로 스.. 2022. 6. 7.
[디자인 패턴]Singleton 패턴 Singleton 유니티에서 자주 쓰이는 singleton 패턴 객체를 하나만 생성, 생성된 객체는 어디서든 참조가 가능하다. 시스템에서 전역으로 관리가 되고, 단 하나의 클래스에서만 정보가 유지되는것을 원할 때 사용한다(ex. manager) 싱글톤의 장.단점 모든 데이터를 전역으로 관리할 수 있기 때문에 쉽게 접근이 가능하며, 중복 생성 및 메모리 낭비를 방지할 수 있으나, 정적 메모리에 할당된 객체이므로 너무 큰 메모리가 쌓일 경우 프로그램 성능이 낮아진다. 너무 많은 데이터를 공유시킬 경우 싱글톤 인스턴스와 다른 클래스 인스턴스들 간의 결합도가 높아져, 개방 폐쇄 원칙에 위배될 수 있다. 병렬처리나 동기화 같이 여러 방법으로 메모리에 접근하는데 문제가 발생하나 Synchronized키워드를 이용해.. 2022. 6. 7.
OSI(Open Systems Interconnection)계층 OSI(Open Systems Interconnection)계층은 OSI 7계층이라고도 한다. 컴퓨터 네트워크 프로토콜 디자인을 7개의 계층으로 구분한 것으로 통신이 일어나는 과정을 단계별로 파악할 수 있다. Physical Layer(물리 계층): 실제 장치들을 연결하기 위한 전기적, 기계적, 기능적인 특성을 이용하여 통신 케이블로 데이터를 전송. 통신 단위는 비트(bit)이며 데이터를 전달만 함. 대표적으로 허브, 리피터 등이 속해 있음. Data link Layer(데이터 링크 계층): Point to Point(점대 점)간 신뢰성 있는 전송(오류, 흐름관리)을 보장하기 위한 계층. 주소 값은 물리적으로 할당 받음(네트워크 카드가 만들어질 때 부터 맥주소가 정해져있다는 뜻) 통신 단위는 프레임 예로.. 2022. 6. 2.
반응형