| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
- long int 의 차이
- c++
- 유니티 LTS
- transform.position
- 탈잉유튜브강의
- 탈잉유튜브기획
- 로블록스 script local script 차이
- UML Diagram 정리
- 회사원A강의후기
- 백준 10844번 c++
- TOPCIT 문제 유형
- 프로그래머스 가장 큰 수 C++
- 탈잉회사원A챌린지
- 백준 11726번 C++
- 1699번
- 유니티
- bfs
- 코드
- 2644번
- 탈잉챌린지
- 탑싯기출
- 탑싯기출문제
- 회사원a탈잉강의후기
- 차이
- 백준 2193번 c++
- 백준 2225번 c++
- 풀이
- 프로그래머스 단체사진 찍기 C++
- 백준
- TOPCIT 후기
- Today
- Total
목록전체 글 (98)
Kiki Devlog
문제 코딩테스트 연습 - [1차] 다트 게임 | 프로그래머스 스쿨 (programmers.co.kr) 후기 처음에 string을 for(char c: dartResult) 로 했더니 안돼서 잘못 푼 줄 알았는데 stoi() 쓸 때 함수 인자가 null인 경우를 처리해주지 않아서 core dump가 난 것이었다. 이것만 빼면 에러는 딱히 없었다. 나는 숫자/ S,D,T / *,# 세가지 경우를 나누기 위해 각 stage에 해당된 계산이 끝나면 continue를 써서 다음 스테이지는 굳이 검사하지 않도록했는데, 아래처럼 각 스테이지를 if문 3개로 크게 나누는 방법도 있었다. if(숫자라면) else if(s,d,t라면) else{ --*,# 라면 } 내 코드 #include #include #include..
문제 17478번: 재귀함수가 뭔가요? (acmicpc.net) 후기 백준 다시 공부해야지! 오랜만에 푼 재귀함순데 난이도가 높지 않아서 딱 재귀함수 오랜만에 푸는 나에게 좋았던 문제. 금방 풀었다. 그리고 출력할 글이 많은 문제는 내가 타자치지 말고 무조건 문제에서 복붙해서 쓰자. 그래서 계속 오답 나왔음. 내 코드 #include using namespace std; void printbar(int num) { for (int i = 0; i < num; i++) { cout
문제 링크 코딩테스트 연습 - 신규 아이디 추천 | 프로그래머스 스쿨 (programmers.co.kr) 후기 푸는 로직은 어렵지 않아서 풀긴 했는데, 코드를 깔끔하게 줄이는게 어려운 것 같다. 다른사람 풀이를 보니까 string 자체에서 pop_back() 같은 함수를 쓰는데 string 에 저런 함수를 쓸 수 있다는걸 처음 알았다. 새로운 정보 알아서 문제 푼 보람이 있다 (string class가 제공하는 기능들이 더 궁금하다면 string - C++ Reference (cplusplus.com) ) 내 코드 #include #include #include #include using namespace std; string solution(string new_id) { string answer = "..
오랜만에 코딩문제를 풀어야겠다 싶었다. 인턴한다고 너무 공부 안했다. Lv1이라해서 얕봤다가 은근 시간 오래걸렸다. 풀이법 숫자패드를 이차원 배열로 보고 손가락의 위치를 배열로 저장해서 다음번에 누를 숫자(이것도 이차원 배열로 표현)와의 거리(손가락과 숫자가 이차원 배열에서 떨어진 칸 수)를 계산. #include #include #include using namespace std; string solution(vector numbers, string hand) { string answer = ""; pair curLPos = make_pair(3,0); pair curRPos = make_pair(3,2); for(auto num : numbers){ if (num == 0) num = 11; // 원..
Optional Chaining은 "물음표 점" 으로 표현함. 사용예시 public event Action OnInteraction; OnInteraction?.Invoke(); OnInteraction 이 null이면 -> null을 반환하고 함수는 실행하지 않음. OnInteraction 이 null이 아니면 -> OnInteraction.Invoke() 를 실행. 즉 ?. 앞의 값이 null이 아니면 "?."가 있는 자리를 "." 로 바꿔서 해석하면 됨. OnInteraction?.Invoke() // OnInteraction.Invoke(); 로 바뀌어 실행됨!
1번함수는 재귀호출의 문제가 없지만 2번함수는 재귀함수 내부에서 fact 함수를 호출 할 때 아직 지역변수인 fact가 정의되기 전이기 때문에 버그를 일으킨다. -- 1번 함수(정상작동) local function fact(n) if n == 0 then return 1 else return fact(n-1)*n end end --2번 함수 (버그 유발) local fact = function (n) if n == 0 then return 1 else return fact(n-1)*n end end print(fact(3))
지역변수는 아니지만 전역변수도 아닌 것. 아래 코드에서 i 는 비지역 변수이다. function A() local i = 0 return function() i = i +1 return i end end
아래 코드의 익명함수 기준으로 i 는 전역 변수도, 지역 변수도 아니다. 익명함수가 호출되는 순간 이미 newCounter()함수는 종료됐기 때문에 i 는 유효 범위를 벗어나게 된다. 하지만 이 코드는 제대로 동작하는데, 바로 클로저 때문이다. 클로저는 함수, 함수에서 필요로 하는 모든 비지역 변수들을 포함하는 것이다. 그래서 newCounter함수를 다시 호출하면 새 지역변수 i를 다시 만들고 이를 새 클로저로 받아쓰게 된다. 그래서 C1과 C2는 같은 함수에 대한 다른 클로저가 된다. 사실 루아에서 함수라고 부르며 호출하는 것들은 클로저다...! function newCounter() local i = 0 return function() -- 익명함수 i = i+1 return i end end c1..
Listner - 특정 이벤트가 발생하기를 기다리다가 실행되는 Component(메서드나 함수)를 말한다. 리스너는 이벤트가 발생함과 동시에 특정 행동을(메서드나 함수를 실행)하는데, 이것을 이벤트 핸들링이라고 한다. 따라서 리스너를 이벤트 핸들러라고 부르기도 한다. [참고] listener란? (tistory.com)
Console.WriteLine() / Console.Write() - 이 두 함수는 unity engine에서는 아무 일도 하지 않음. (unity는 custom console system을 사용하기 때문) 그러니까 UnityEngine.Debug.Log / LogError / LogWarning 등을 사용하자 - 두 함수의 차이는 WriteLine 은 새로운 라인에 출력한다는 점이다. ( c++의 "\n", endl 과 같은 역할. Write() 에서 줄바꿈 기능이 추가됨. ) [참고] Why doesn't Console.WriteLine work in MonoDevelop since it's written in C#? - Unity Answers Difference between Console.Wr..