안녕하세요! 정렬 -2 (3-3)과 관련해서 아래처럼 sort를 이용하면 안되는건가요? for문 두번을 이용해서 설명해주신 방법대로 해야하는 것이 맞는지 궁금하고, 아래 방법대로 하면 O(N) 연산량이 되는 것인지도 궁금합니다! 감사합니다. input = [4,6,2,9,1] ###내가 한것### def insertion_sort(array): n = len(array) for i in range(1,n): if array[i]<array[i-1]: a = array[:i+1] a.sort() array[:i+1]=a return array insertion_sort(input)
안녕하세요! 2.20 강의를 듣고 Vercel에 배포까지 한 뒤에 궁금한 점이 생겨 질문 드립니다! 이전 강의 실습에서는 인덱스 페이지의 추천 도서를 On-Demand ISR 방식으로 적용한 뒤 직접 주소를 입력해 페이지 요청을 보내서 바꾸었는데 Vercel에 배포한 뒤에는 어떻게 요청을 보내서 추천 도서 목록을 바꿀 수 있나요? 아니면 시간 단위로 업데이트하는 방식으로 다시 바꾸어서 작성한 뒤 재배포하나요?
component.name에는 T 컴포넌트를 가진 게임 오브젝트의 이름이 와야 하는데, 게임 오브젝트의 이름이 아닌 컴포넌트의 이름이 옵니다. 예를 들면 FindChild<Button>이라면, component.name에 Button이 와, FindChild 함수가 계속 null만 return하는 상황입니다. (아래에 코드 첨부) 코드 문제가 아니라 오브젝트 이름 문제였네요,,ㅠㅠ 해결했습니다 UIButton.cs using System; using System.Collections.Generic; using TMPro; using UnityEngine; using UnityEngine.UI; public class UIButton : MonoBehaviour { // 타입별로 오브젝트를 저장 Dictionary<Type, UnityEngine.Object[]> _objects = new Dictionary<Type, UnityEngine.Object[]>(); [SerializeField] TextMeshProUGUI text; // Button 오브젝트의 이름들을 enum으로 저장 enum Buttons { PointButton, } enum Texts { PointText, ScoreText, } private void Start() { Bind<Button>(typeof(Buttons)); // enum은 Buttons인데, Button 컴포넌트를 가진 오브젝트에 매핑해주세요라는 의미 Bind<Text>(typeof(Texts)); Get<Text>((int)Texts.ScoreText).text = "Bind Test"; } void Bind<T>(Type type) where T : UnityEngine.Object { // 1. 딕셔너리에 enum 요소 수만큼 빈 object 배열 넣어주기 string[] names = Enum.GetNames(type); // enum값들이 names에 string으로 담김 UnityEngine.Object[] objects = new UnityEngine.Object[names.Length]; _objects.Add(typeof(T), objects); // 2. 실질적인 컴포넌트(오브젝트) 찾기 for (int i = 0; i < names.Length; i++) { objects[i] = Util.FindChild<T>(gameObject, names[i], true); } } T Get<T>(int idx) where T : UnityEngine.Object { UnityEngine.Object[] objects = null; if (_objects.TryGetValue(typeof(T), out objects) == false) return null; return objects[idx] as T; } int score = 0; public void OnButtonClicked() { score++; text.text = $"Point : {score}"; } } Util.cs using Unity.VisualScripting; using UnityEngine; public class Util { // go는 최상위 오브젝트 / recursive는 그 자식뿐만 아니라 자식의 자식도 계속 파고들며 찾을건지 여부 public static T FindChild<T>(GameObject go, string name = null, bool recursive = false) where T : UnityEngine.Object { if (go == null) return null; if (recursive == false) { for (int i = 0; i < go.transform.childCount; i++) { Transform transform = go.transform.GetChild(i); if (string.IsNullOrEmpty(name) || transform.name == name) { T component = transform.GetComponent<T>(); if (component != null) return component; } } } else { foreach (T component in go.GetComponentsInChildren<T>()) { if (string.IsNullOrEmpty(name) || component.name == name) return component; } } return null; } }
안녕하세요! React Native도 Next.js와 같이 폴더 기반 라우트라 게시글 수정 페이지를 ~/app/post/update/[id].tsx 에 만들었고, 해당 [id] 부분에 동적으로 게시글 id 값을 넣어 라우팅할 수 있게 하였습니다. 또 ~/app/post/_layout.tsx 레이아웃에 Stack.Screen에 등록도 하였구요! 그래서 엑스포 라우터를 import 하여 import { router } from 'expo-router'; 바텀 시트의 수정 버튼 클릭 시, 다음을 호출하였는데요, router.push(`/post/update/${post.id}`); 다음 에러가 납니다... ㅠ Argument of type /post/update/${number} is not assignable to parameter of type 'RelativePathString | ExternalPathString | ... '/post/update/[id]'라는 경로는 인식하는 것으로 보아 엑스포 라우터가 다이나믹 경로를 못 찾는 것 같은데 왜 이런 현상이 발생하는지 모르겠습니다 ㅠ
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 iframe 전환을 해야되는데 강사님 강의에는 iframe 태그가 있는데 제 화면에는 iframe 안보이는데 이건 어떻게 된건가요 ~
학습 관련 질문을ㅇ 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 안녕하세요 퇴근후딴짓님. 마지막 답이 이런식으로 나오는 그대로 제출해도 되나요?? 퇴근후 딴짓님 코드 그대로 입력햇는데 아래 처럼 나오는데요. 앞에 int()로 묶어도 점수에 영향이 없나요?? 아니면 아래 그래도 제출해도 되나요?? np.int64(313)
안녕하세요. 좋은 강의 잘 보고 있습니다. 완전 초보의 입장에서 이 강의에서 뿐만이 아니라 지금까지 공부해 오면서 쭉 궁금했던 부분이 있는데요. 강사분처럼 숙련자 분들은 작성한 스크립트들의 관계성이라던가 함수 내용들을 머릿속에 다 기억을 하고 계시는지 궁금합니다. 저의 경우에는 강의 하시는 내용 자체는 하나의 스크립트 분량이 작아서 그때 그때 이해는 되는데요. 이 테스크 강의에서만 봐도 스크립트가 12개가 만들어지는데 이렇게 만들어진 클래스들간의 관계나 함수 같은 것들을 전부 기억하기에는 무리가 있는데 이게 정상인지 비정상인지를 알고 싶습니다. 앞으로 계속 공부를 해 나간다면 이러이러한 부분이 늘게 될거다 하는 부분이 있을까요? 주변에 길잡이를 해줄 사람이 없으니 이런 부분이 불투명하고 어렵게 느껴집니다. 머릿속의 생각을 제대로 표현하지 못하고 너무 중구난방 쓰여진 거 같은데 제 생각이 최대한 잘 전달 되길 바랍니다.
Hey, I have a question server in main loop dont limit execution time, everything happen withouth deltatime only base on JobSerializer Timer. So in the end we dont really know if server is working with 200 ticks per second or 15. Does this approach isnt affecting player objects latency? Does _lastSendTick = System.Environment.TickCount64; is enough to interpolate beetween player last postion and current? static void GameLogicTask() { while (true) { GameLogic.Instance.Update(); Thread.Sleep(0); } }
안녕하세요 딩코님! 1주차 숙제에서 추가로 주신 문자열 요약해보기를 풀었는데 JAVA로 진행중입니다! // 아스키코드 방식 public static StringBuffer summarizeString(String str) { int[] strArr = new int[26]; for(int i =0;i<str.length();i++){ int index = (int)str.charAt(i) - (int)'a'; strArr[index] += 1; } StringBuffer strbuf = new StringBuffer(); for(int i =0;i<strArr.length;i++){ if(strArr[i] > 0){ strbuf.append((char)(i+(int)'a')).append(strArr[i]+ " "); } } return strbuf; } public static void main(String[] args) { String inputStr = "acccdeee"; System.out.println(summarizeString(inputStr)); } // 문자열 뒤집기 방식 public static StringBuffer summarizeString(String str) { int count = 0; StringBuffer strBuf = new StringBuffer(); for(int i = 0;i < str.length() - 1; i++){ if(str.charAt(i) == str.charAt(i+1)){ count++; }else{ strBuf.append(str.charAt(i)).append(count + 1).append("/"); count = 0; } } strBuf.append(str.charAt(str.length() - 1)).append(count + 1); return strBuf; } public static void main(String[] args) { String inputStr = "acccdeee"; System.out.println(summarizeString(inputStr)); } 저는 아스키 코드를 사용해서 풀었는데 딩코님이 적어주신 답안지를 보니 바로 전에 풀어본 문자열 뒤집기와 유사하게 풀이를 해주셨더라구요 그래서 그걸 참고해서 작성해보니 둘다 똑같이 시간복잡도는 O(n)의 성능을 가지고있는거같고 다른점은 아스키 코드형식은 무조건 결과값이 abc순으로 출력이되고 문자열뒤집기 방식은 입력받은 순서대로 나오는거말고는 다른점은 찾을수가없었습니다. 해당 문제는 해설영상이 없어서 혹시 제가 문제를 이해못해서 잘못 작성한건가 해서 질문남깁니다! 이렇게 구체적으로 알려주시면, 더 정확하고 도움이 되는 답변을 드릴 수 있습니다! 😊
Action No에서 Action NO = () => { ToastPopUPManager.Instance.Initialize("파티 초대를 거절하였습니다ㅠㅠ"); photonView.RPC("IgonrePartyInvite", PhotonHelper.GetPlayer(inviterID), inviterID); }; 강의에서는 IgnorePartyInvite의 인자로 TargetPlayerIndex를 넘겨주는데, 저는 실행이 안 되서 inviterID로 넘겨주니 정상적으로 실행 되더라구요. 해당 action이 RPC안에서 정의 된 거라서 상대 기준에서 다시 내 기기로 함수를 실행시키기 위해서는 inviterID로 넘겨주는 게 맞지 않나요..? RPC관련 개념이 아직 미숙해서 질문해봅니다.
안녕하세요. 온보딩 기간: 4월 28일 ~ 5월 9일 온보딩 기간 중 파이썬과 판다스를 미리 학습 부탁드립니다. 스터디에서는 문제 풀이 참여 중심으로 진행 예정입니다. 오징어게임 관련해서 이런 안내가 있는데 전체 강의 중 최소한 ‘섹션3. [작업형1] 판다스’까지는 학습 완료해야 한다고 이해하면 될까요?
작업형2 모의문제3에서 xgb모델을 사용할 때 max_depth 기본 설정이 3으로 되어 있어서 max_depth=3을 코드에 넣었을 때와 넣지 않았을 때가 값이 똑같아야 한다고 설명해주셨는데 저는 값이 다르게 나와요. 왜 다르게 나올까요.. 그리고 머신러닝 강의를 따라하다보면 결과 값이 종종 영상과 다르게 나오는 경우가 있는데 코드를 똑같이 작성해도 값이 다를 수 있나요? from xgboost import XGBClassifier xgb=XGBClassifier(random_state=2022) xgb.fit(X_tr,y_tr) pred=xgb.predict(X_val) pred_proba=xgb.predict_proba(X_val) print(roc_auc_score(y_val, pred_proba[:,1])) print(f1_score(y_val, pred)) print(accuracy_score(y_val, pred)) ->0.9192546583850931 0.8444444444444444 0.8108108108108109 from xgboost import XGBClassifier xgb=XGBClassifier(random_state=2022, max_depth=3) xgb.fit(X_tr,y_tr) pred=xgb.predict(X_val) pred_proba=xgb.predict_proba(X_val) print(roc_auc_score(y_val, pred_proba[:,1])) print(f1_score(y_val, pred)) print(accuracy_score(y_val, pred)) -> 0.8975155279503105 0.8444444444444444 0.8108108108108109
for col in cols le = labelencoder() C_Train[col] = le.fit_transform(C_train[col]) 여기에서요. col 이라는 피처는 for col 반복문 에서 처음 생겼는데 C_train[col] 변수에 담을 transform(c_train[col])의 피처 col은 어디서 생겨난지 모르겟어서요.. 반복문 처음에 col로 피처를 생성한거를 c_train[col]이라고 명시하는 순간 col 칼럼이 생기면서 그 값을 알아서 가져오는 건가요???