# C

8545개의 포스트

1940. 가랏! RC카! D2

풀이 RC카의 속도가 0 미만일 때만 주의해 주면 된다. 코드 여담 X

약 6시간 전
·
0개의 댓글
·

1966. 숫자를 정렬하자 D2

풀이 sort를 사용하면 됩니다. 코드 여담 X

약 6시간 전
·
0개의 댓글
·

[백준 / 1620 / C++] 나는야 포켓몬 마스터 이다솜

1. 문제 접근 해당 문제는 string형을 key, int형을 value로 갖는 map과 int를 key, string을 value로 갖는 map을 통해 풀어야 함 => O(NlogN)으로 풀 수 있음 아니면 숫자를 통해 문자열을 찾는 경우는 배열을 활용해 풀 수 있음 2. 시행착오 입력이 엄청 많이 들어오는 경우(약 20만) 시간초과 문제를 겪음 3. 코드 및 풀이 해당 코드를 통해 입출력의 속도를 빨리 할 수 있다. 참고 : https://jaimemin.tistory.com/1521 주의사항 c의 stdio 버퍼와 cpp의 iostream 버퍼 동기화를 하지 않았기 때문에 cin과 scanf, getchar 등을 함께 쓸 수 없음 3.1 풀이 먼저 입력으로 들어오는 N개의 포켓몬에 대한 정보를 stringmap과 intmap에 넣음 그 후 M개의 문제가 들어오고, 각각

약 12시간 전
·
0개의 댓글
·

[프로그래머스/C++] 방금 그곡

✅ LV.2 📌 2018 KAKAO BLIND RECRUITMENT ✏️ 최종 솔루션 ⭐️ 문자열 구현 # 이 붙은 음계도 하나의 음계로 인식해야하기 하는데 문자열 탐색할 때 번거롭기 때문에 C# ➡️ c(소문자) 이런 방식으로 치환 getline 으로 , 기준으로 문자열 분할하여 재생 시작 시간, 재생 종료 시간, 곡명, 음계를 저장 곡 재생 시간은 모든 시간을 분으로 치환하여 계산 전체 재생 길이가 음계보다 길면 음계가 계속 반복되므로 이를 재생 길이에 맞춰 총 재생 음계 만들기 find 함수 사용하여 재생 음계에 멜로디의 포함 여부 확인하고 포함되어 있고 이전에 저장된 음계보다 재생 시간이 길면 곡명과 재생 길이 갱신 📌 self feedback 문자열 치환과 특정 문자 포함 여부 확인을 위해 replace 를 사용해야했으나 익숙하지 않아서 힘들었음 문제를 잘못 이해해서 원래는 음계와

약 14시간 전
·
0개의 댓글
·
post-thumbnail

[프로그래머스/C#] 가장 가까운 같은 글자

출처는 프로그래머스 입니다. https://school.programmers.co.kr/learn/courses/30/lessons/142086 🐧 가장 가까운 같은 글자 문제 설명 문자열 s가 주어졌을 때, s의 각 위치마다 자신보다 앞에 나왔으면서, 자신과 가장 가까운 곳에 있는 같은 글자가 어디 있는지 알고 싶습니다. 예를 들어, s="banana"라고 할 때, 각 글자들을 왼쪽부터 오른쪽으로 읽어 나가면서 다음과 같이 진행할 수 있습니다. b는 처음 나왔기 때문에 자신의 앞에 같은 글자가 없습니다. 이는 -1로 표현합니다. a는 처음 나왔기 때문에 자신의 앞에 같은 글자가 없습니다. 이는 -1로 표현합니다. n은 처음 나왔기 때문에 자신의 앞에 같은 글자가 없습니다. 이는 -1로 표현합니다. a는 자신보다 두 칸 앞에 a가 있습니다. 이는 2로 표현합니다. n도 자신보다 두 칸 앞에 n이 있습니다. 이는 2로 표현합니다. a는 자신보다 두 칸, 네 칸

약 14시간 전
·
0개의 댓글
·
post-thumbnail

[TIL] Unity - AI Navigation - day 51

🐧 들어가기 앞서 개인 과제가 끝났다. 최대한 노력했지만 결과물이 영 만족스럽지 않아서 아쉽다. 객체와 스크립트 간 연결하는 부분을 더 연습해야겠다. 어떻게 하면 객체가 원하는 로직을 가지고 있을지 스크립트로 구현하는 연습이 필요한 것 같다. 🐧 오늘 배운 것 3D 강의를 완강했는데, 가장 신기한 부분은 AI Navigation이다! 🐧 기억할 것 & 진행 개인 과제 상점을 눌러서 돈을 빠지게 하고 싶었는데, 처리해야할 Null이 많아서, 시간에 쫒겨 포기했다. 처리해야할 문제가 많다는 것은 기능을 너무 많이 추가했음을 의미한다.(구성을 잘못함) 다음에는 로직을 우선 생각하고 제작하자. > https://github.com/Munch310/Pe

약 14시간 전
·
0개의 댓글
·

[백준 / 2559 / C++] 수열

문제 : https://www.acmicpc.net/problem/2559 1. 문제 접근 1. 누적합을 통한 prefix sum 배열로 해결해야 함 2. 시행착오 코드 자체는 맞긴 했지만, 누적합 배열을 활용해서 더 깔끔하게 짤 수 있던 점을 간과 누적합 배열을 사용하지 않고, 원본 값들을 배열에 그대로 저장하고 presum이라는 변수에 저장하고 값을 갱신하는 방법을 썼음 3. 코드 및 풀이 3.1 첫 번째 풀이 3.2 두 번째 풀이(advance) 1.psum이라는 누적합 배열을 사용 ret이라는 초기 값을 설정함 : 초기값을 100000 x -100(N의 최대 범위 x 온도 최소값) => 10,000,000 + 4(값 오버플로우 방지용) 3.누적합은 첫 번재 index부터 사용해야 함 => 0번째 Index는 항상 0이어서, 반복문을 더할 때 이상업게끔 4.max()를 활용해 조건문 없애기 5

약 19시간 전
·
0개의 댓글
·
post-thumbnail

[프로그래머스] (C++) Lv.3 베스트앨범

https://school.programmers.co.kr/learn/courses/30/lessons/42579 정렬와 자료구조에 대한 명확한 이해를 요구했던 문제. 문제 및 입출력 해결 과정 조건을 확실하게 이해하는 데 시간이 꽤 걸렸다. 문제에서 추출할 수 있는 정보는 다음과 같다. 장르별로 규칙에 부합하는 최대 2개의 노래를 추출한다. 속한 노래가 많이 재생된 장르를 먼저 수록한다. (장르를 총 재생수 기준 내림차순으로 정렬) 장르 내에서 많이 재생된 노래를 먼저 수록한다. (장르 내부 노래들을 재생수 기준

약 22시간 전
·
0개의 댓글
·
post-thumbnail

<객프> 2. C++ 프로그래밍의 기본 (namespace, std::, 이름공간, 키 입력, 문자열 입력, #include <iostream>)

cout, Hello 맛보기 주석문 > 여러줄 : /* */ 한줄 : // main함수 > - 실행 시작점 main 종료시 프로그램 종료 return문 생략 가능 void main() : 표준 아님 솔루션 > 프로젝트 > 소스코드 표준입출력을 위한 클래스, 객체, 변수 선언 cout, cin, > 등 연산자 선언 cout 객체 > 스크린 출력장치에 연결된 표준 출력 객체 에 선언 std 이름 공간에 선언: std::cout - 스트림 삽입 연산자 여러개로 여러값 출력 가능 #5.5-3hello1 2. 연산식, 함수호출 3

어제
·
0개의 댓글
·

[C++] 05-2. 복사 생성자 (얕은 복사, 깊은 복사)

5.5 복사 생성자 1. 얕은 복사(shallow copy)와 깊은 복사(deep copy) 복사 : 원본과 동일한 별개의 사본을 만드는 것 객체의 얕은 복사와 깊은 복사 C++ 객체 복사에도 얕은 복사와 깊은 복사가 존재 ` 원본 Person 객체의 id는 1이고 name 포인터는 "Kitae" 문자열을 가진 동적 할당 배열을 가리키고 있음 얕은 복사 : 원본 객체의 멤버가 그대로 사본 객체에 복사되므로, 사본은 원본의 name 메모리를 공유 깊은 복사 : name 포인터가 가리키는 메모리까지 복사하여 원본과 사본의 name은 별개의 메모리를 가리키므로, 완전한 복사가 이루어짐 2. 복사 생성 및 복사 생성자 아래 코드 : Circle 클래스의 복사 생성자와 객체 복사 복사 생성자 선언 복사 생성 : 객체가 생성될 때 원본 객체를 복사하여 생성

어제
·
0개의 댓글
·

[C++ 1주차] 클래스와 객체 : 객체, 클래스 작성, 생성자, 소멸자, 접근 지정자, 오버헤드, 인라인함수, c++ 구조

객체 세상의 모든 것이 객체이며 캡슐화된다. 캡슐화 -> 객체의 내부를 보호하고 볼 수 없게 하여 데이터에 대한 보안과 보호를 가능하게 하고, 외부 접근을 제한한다. 단, 객체의 일부분은 공개 함 => 외부와의 인터페이스를 위해 C++ 객체는 멤버 함수와 멤버 변수로 구성 메모리에 생성되며 실체, instance라고도 불림 상호 별도의 공간에 멤버를 만듦 클래스의 모양을 그대로 가지고 탄생 (클래스 => 틀, 객체 => 틀로 찍어낸 결과물) 객체 생성 및 활용 객체 이름 및 객체 생성 // 이름이 donut인 Circle 타입의 객체 생성 객체의 멤버 변수 접근 // donut 객체의 radius 멤버 변수 값을 1로 설정 객체의 멤버 함수 접근 // donut 객체의 면적 알아내는 함수 호출 및 반환값 area에 저장 > 클래스 객체를 만들어내기 위해 정의된 설계도, 틀 클래스는 객체나 실체가 아니며

어제
·
0개의 댓글
·
post-thumbnail

객체지향 프로그래밍 - 1주차

Ⅰ. C++ 클래스 >객체를 만들어내기 위해 정의된 설계도(틀) 멤버 변수 / 멤버 함수 선언 Ex) Ⅱ. C++ 객체 >• 생성될 때 클래스의 모양을 그대로 가짐 • 멤버 변수 / 멤버 함수 • = instance(실체) Ⅲ. 클래스 만들기 >• 클래스 작성 >>✓ 클래스 선언부 >>>▶ class 키워드를 통해 클래스 선언 ▶ 멤버 변수와 멤버 함수 선언 ▶멤버에 대한 접근 권한 지정 (private/protected/public) Ex) >• 클래스 작성 >> ✓ 클래스 구현부 >>>▶클래스에 정의된 모든 멤버 함수 구현 Ex) Ⅳ. 객체 생성 >• 객체의 이름 / 객체 생성 >> >• 객체의 멤버 변수 접근 >> >• 객체의 멤버

어제
·
0개의 댓글
·
post-thumbnail

연결 리스트 구현

구조체를 사용하여 항상 내림차순으로 정렬되는 이중(양방향) 연결리스트 ADT를 구현하라. 가 이번 커리큘럼 과제되시겠다. 물론 몇 가지 조건들이 있었다. 어떤 함수들을 포함해서 구현하라든가, Node 구조체를 동적할당해서 구현하라든가.. 1. Node 구조체 먼저 이전 노드를 가리키는 데이터, 다음 노드를 가리키는 데이터, 정수를 저장할 데이터를 포함한 Node 구조체가 필요했다. 이렇게 자신의 구조체를 가리키는 포인터를 멤버로 갖는 형식을 자기 참조 구조체라고 한다. 2. List 구조체 head와 tail도 만들어 놓자. 참고로 헤드노드(head node)와 테일노드(tail node)는 실질적인 값을 갖는 가장 첫번째와 마지막 노드로, head 앞에 쓰이는 더미 노드(dummy node)인 헤더 노드(header node)가 아니다. 따라서 이 둘은 나중에 전체 코드를 보면 알겠지만 main에서 value값을 넣어줄 것이다.

어제
·
0개의 댓글
·
post-thumbnail

[TIL] Unity - Coroutine 사용! - day 50

🐧 들어가기 앞서 개인 과제를 어떻게 구현은 했는데, 완전히 다 구현하지는 못했다. 아쉬운 부분이 너무 많다. 🐧 오늘 배운 것 코루틴 직접 적용하기 🐧 기억할 것 & 진행 인벤토리에서 아이템을 적용하면, 스탯창에서 아이템 스탯까지 반영해야한다. 그러나 스탯창은 비활성화 상태일 때, 스탯값을 받지 못하는 상태다. 이때 값을 전달해주기 위해 코루틴을 사용했다! 🐧 게임에 구현한다면? OnEnable(): 이 메서드는 StatusUI 스크립트가 활성화될 때 호출된다. 스크립트가 활성화되면 코루틴인 UpdateStatusUI()가 시작된다. OnDisable(): 이 메서드는 StatusUI 스크립트가 비활성화될 때 호출된다. 스크립트가 비활성화되면 모든 코루틴이 중지된다. UpdateStatusUI(): 주기적으로 PlayerStatHandler를 검색하여 플레이어 데이터를 가져온다. 데

어제
·
0개의 댓글
·
post-thumbnail

23-09-21 언리얼 C++ 학습자료

|AGPCWeapon| |-| > 객체를 생성하고 속성값을 초기화 하는 메커니즘 또는 문법이다. >> AGPCWeapon 클래스 생성자 (AGPCWeapon::AGPCWeapon) 클래스의 인스턴스를 생성할 때 호출되는 특수한 함수 클래스의 인스턴스를 만들때 어떤 초기화 작업을 수행할지 정의한다. >> FObjectInitializer 객체를 매개변수로 받음(FObjectInitializer const& ObjectInitializer) 객체 초기화는 FObjectInitializer 객체를 사용하여 이루어 진다. 초기화 프로세스를 관리하고 클래스의 속성을 설정하는데 사용된다. >> Super(ObjectInitializer) 호출 부모 클래스(Super는 부모 클래스를 가리키는 키워드)의 생성자를 호출하는 부분 AGPCWeapon 클래스가 어떤 부모 클래스를 상속하는 경우, 이 코드는 부모 클래스의 생성자를 호출후, 부모 클래스를 초기화 한다. > >> Me

1일 전
·
0개의 댓글
·

<객프> 1. C++ 시작

> #### 1. 기계어 > 0,1의 이진수로 구성됨 >#### 2. 어셈블리어 > 어셈블러: 어셈블리어 프로그램을 기계어 코드로 변환 (컴파일러: 어셈블리어 -> 기계어) >#### 3. 고급언어 > 사람이 이해하기 쉽게 고안된 언어 ex) c,c++,java > 1. c언어와의 호환성 객체 지향 도입 (캡슐화, 상속) 엄격한 타입 체크 실행시간 저하시키는 요소 해결 1. 캡슐화 캡슐화 : 데이터를 캡슐로 싸서 외부의 접근으로부터 보호, 클래스로 표현 클래스 : 객체 만드는 틀 객체 : 클래스라는 틀에서 생겨난 실체(인스턴스) 2. 상속성 객체가 자식 클래스의 맴버와 부모클래스에서 선언된것 그대로 생성 3. 다형성 연산자 중복 ex) redColor객체 + blueColor객체 -> purpleColor 객체 함수

1일 전
·
0개의 댓글
·

c/c++ 공부 시작

동기 2학년을 마치고 남들보다 1년 일찍 대학에 왔다는 이유로 1년간의 자유를 찾아 떠난 휴학도 어느덧 끝이 다가왔다. 개발자라는 직업에 대해서 내가 과연 적성에 맞을까? 하는 의구심도 있었고 코딩 자체가 재미도 없었고 c언어를 공부한뒤에 어떻게 프로젝트를 진행하며 어디서 부터 손을 대야할지 막막했기에 1년간 그냥 아르바이트만 하면서 살았다. 그러던중 유튜브에서 c/c++ 로드맵 영상을 보게되었고 c 언어 공부를 교양의 수준이 아닌 제대로 배워보고 싶었다. 컴퓨터 구조에 대한 전반적인 이해 c언어 문법 자료구조에 대한 전반적인 이해와 구현 주소록 구현 싱글 링크드 리스트 이진트리 3.AVL 4.b - tree 2차 메모리 조건 검색 기능(SQL , select구문) 아직 주소록

1일 전
·
0개의 댓글
·
post-thumbnail

C++ | 함수와 참조, 복사 생성자

🌦️ @xaesu 함수의 인자 전달 방식 값에 의한 호출 Call by value : 호출하는 코드에서 넘겨주는 실인자 값이 함수 매개변수에 복사되어 전달되는 방식 매개변수 a, b가 함수에 전달되면 함수 스택에 전달된 매개변수가 생성되고 m, n값이 복사되어 a, b와 값이 교환되고, 함수가 종료되면 함수 스택이 사라진다. 주소에 의한 호출 Call by address : 주소를 직접 포인터 타입의 매개변수에 전달받는 방식 포인터 매개변수 a, b가 함수 스택에 생성되고 값에 전달되면 m, n의 주소가 a, b에 전달되어 a, b는 m, n의 메모리 공간을 가리키고, 함수에 의해 포인터 a, b이 변경되면 m, n의 값도 함께 변경된 채로 남아있게 된다. 함수 호출 시 객체 전달 값에 의한 호출 Call by value : 함수에 객체를 전달할 때 객체 이름만 전달 객체가 현재 상태 그대로 매개변수에

1일 전
·
0개의 댓글
·
post-thumbnail

[백준 C++] 16236 아기 상어

문제 N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다. 아기 상어와 물고기는 모두 크기를 가지고 있고, 이 크기는 자연수이다. 가장 처음에 아기 상어의 크기는 2이고, 아기 상어는 1초에 상하좌우로 인접한 한 칸씩 이동한다. 아기 상어는 자신의 크기보다 큰 물고기가 있는 칸은 지나갈 수 없고, 나머지 칸은 모두 지나갈 수 있다. 아기 상어는 자신의 크기보다 작은 물고기만 먹을 수 있다. 따라서, 크기가 같은 물고기는 먹을 수 없지만, 그 물고기가 있는 칸은 지나갈 수 있다. 아기 상어가 어디로 이동할지 결정하는 방법은 아래와 같다. 더 이상 먹을 수 있는 물고기가 공간에 없다면 아기 상어는 엄마 상어에게 도움을 요청한다. 먹을 수 있는 물고기가 1마리라면, 그 물고기를 먹으러 간다. 먹을 수 있는 물고기가 1마리보다 많다면, 거리가 가장 가까운 물고기

1일 전
·
0개의 댓글
·

프로그래머스 등굣길

해당 문제는 dp 문제로 이전의 값을 재사용해서 해결하는 방식의 문제였는데 점화식을 짜고 코드를 돌려보는데 계속 실패가 떠서 이유를 찾아보니 puddles 값을 반대로 해서 계속 틀렸다. 문제가 일부러 헷갈리게 만든 문제인 것 같다. (swift가 없어서 c++로 제출)

1일 전
·
0개의 댓글
·