import sys input = sys.stdin.readline n, k = tuple(map(int, input().split())) dp = [0 for _ in range(k+1)] minVal = sys.maxsize for _ in range(n): w, v = tuple(map(int, input().split())) dp[w] = v if w < minVal: minVal = w for i in range(minVal+1, k+1): maxVal = -1 for j in range(minVal, i): maxVal = max(maxVal, dp[j] + dp[i-j], dp[i]) dp[i] = maxVal print(dp[m]) 안녕하세요 강사님! 우선, 이 강의가 저한테 정말 도움이 되고 있음에 감사드립니다! 저는 위와 같이 dp 테이블을 2차원으로 할 생각을 못하고 풀었다가 시간초과가 났습니다. 아직 dp가 어렵게 느껴져서 dp 테이블 설계를 잘 못하겠네요..ㅠㅠ 다행히 강의에서 dp 문제는 올려주신 강의만 제대로 숙지하면 될 것 같다고 하셨는데 dp 문제를 잘 풀기 위한 다른 팁 같은게 있을까요?
이번 강의에서 PlayerController의 다음 코드가 작동하려면 void UpdateBelowCollision (){ if ( movement . HitBelowObject . TryGetComponent < PlatformBase >( out var platform )){ if ( ! platform . IsHit ){ platform . UpdateCollision ( gameObject ); // gameObject는 플레이어 } } } 적어도 Platform_00_Moving 프리팹에, PlatformBase를 상속받은 클래스가 있는 스크립트를 어태치해야 될 것 같습니다. 그래서 GetComponent로도 찾아지고, UpdateCollision메소드도 실행되구요.
안녕하세요, 먼저 좋은 내용의 강의 감사합니다. 다름 아니라 강의 비디오에서 'FastAPI Form 다루기 - 01'부터 녹음 된 소리가 울림이 커서 명료하지 않게 들리는 것 같습니다. 혹시 번거로우시겠지만, 좋은 강의 경험을 위해 그 전까지의 영상과 같이 오디오를 깔끔하게 변환해주실 수 있을지 문의 드립니다. 감사합니다.
24.10.29 수정 맨 밑에 해결 방안 적어놨습니다. 저처럼 고생하는 사람 없기를 바랍니다. 24.10.24? socket 이 null인데요. 해당 호출스택입니다 socket = null 조사식 캡처본입니다. 이전 강의에서도 처음 실행했을 때 네트워크 허용 관련 창이 떴었는데 빠르게 누르면서 뭘 눌렀는지 모를정도로 가볍게 생각하고 넘어갔는데 계속 이런 상황이라 디버깅이 어렵네요. 다른 질문에도 Unhandled Exception 나온 분꺼도 읽었는데 일단 기본 테스트니까 넘어가라고 하셔서 했는데도 계속 뜨더라고요.. 4강 강의는 계속 이렇게 무시하고 진행해야 할까요? 구글링했을 때 제가 네트워크 허용안한거 같은데 다시 허용 뜨게 하는방법도 모르겠고, 조언 부탁드립니다 ㅠㅠ 24.10.27 추가 4번의 호출스택에서 _args.ConnectSocekt이 null 입니다. _args는 null이 아니고, SocketError는 success로 넘어옵니다. 그리고 네트워크 허용 창 같은 경우 방화벽을 다 해제하고도 진행해 봤었는데 그대로이며, 방화벽 다 해제하고, 다시 진행하니까 Sever를 허용 하시겠냐고 창이 떠서 이번에는 허용을 눌렀는데도 그대로입니다.. 디버깅 모드 하지 않고 실행하면 이러고 끝입니다. Socket Error 조사식. This protocol version is not supported. 저는 작업한것들을 강의마다 git으로 올려두고 있는데 혹시나하고 Session3 26강까지는 정상작동했다가 Session#4 27강에 해당 에러를 발견하게 됐습니다. 이전에 이런 에러가 없었는데.. 원인을 계속 찾아볼게요 24.10.29 해결 구글링과 gpt를 통해서 찾아봤습니다. 우선 연결할 port(7777)가 없는 것을 확인. 방화벽에서 차단하고 있는지 체크. 인바운드 규칙으로 포트 추가. 로컬 Ip를 직접 연결하고, TcpListner를 직접 Start 호출. 코드문제 1. Close 매개변수를 사용하지 않았습니다. 강의 따라가다가 놓친것 같네요.. 코드문제 2. _reserveSize == FreeSzie 같으면 null 일때 문제. 현재 Open 메서드에서 _reserveSize 가 FreeSize 와 같을 때 null을 반환하도록 되어 있습니다. 이 경우 OnConnected 메서드에서 Array.Copy 를 호출할 때 openSegment.Array 가 null이 되어 ArgumentNullException 이 발생할 수 있습니다. 이제 에러는 안나지만, 서버와 클라의 연결이 계속 안됐습니다. 이런식입니다. 그러다 멀티쓰레드를 사용하면 시간이 안맞아서 그럴 수 있다고 하더라고요 기존 IPAddress ipAddr을 원복시키고, Thread.Sleep으로 5초 늦게 연결 을 하니까 정상작동이 됐습니다 다른 도움이 필요하시면 ChatGPT에 기다려달라고하고 class 전체 복사해서 하나씩 읽게 한 다음에, 문제되는 점을 찾거나 에러 관련 질문을 넣으면 적지않게 도움을 받을 수 있을겁니다.
CORS 설명 주신 부분을 보면 처음 브라우저에서 request 날릴 때에는 Origin에 아무런 값이 들어가 있지 않아서 response를 받고 그 이후에 받은 html의 javascript 쪽에서 다른 요청을 보냈을 때 기존에 요청하면서 받았던 Origin 값이 같이 들어가면서 이슈가 발생한다고 말씀주셨는데, blog json data 테스트 하는 거 보면 origin이 null인데 바로 cors 에러가 나나요 ?
pdf 14_async_sqlalchemy 데이터 검색(읽기) github 링크가 잘못 연결되어있습니다. https://gist.github.com/DaveLee-fun/3ff74108d3b58f8ffb731c1ec106691e 연결되어 있는 페이지에 코드는 async 비동기 실행 코드가 아닌 그냥 sqlalchemy 코드입니다.
@app.get("/items") # 함수에 개별 인자값이 들어가 있는 경우 path parameter가 아닌 모든 인자는 query parameter # query parameter의 타입과 default값을 함수인자로 설정할 수 있음. async def read_item(skip: int = 0, limit: int = 2): return fake_items_db[skip : skip + limit] @app.get("/items_nd/") # 함수 인자값에 default 값이 주어지지 않으면 반드시 query parameter에 해당 인자가 주어져야 함. async def read_item_nd(skip: int, limit: int): return fake_items_db[skip : skip + limit] 안녕하세요 url 차이에 관해 질문드립니다. 위에 url은 "/items" 인데, 아래 url은 "/items_nd/" 으로 끝에 /가 붙어있는데요. 둘다 query params로 구성되어 있는데 위는 /로 안끝나고, 아래는 왜 /로 끝났는지 이유가 궁금합니다.
지난 번에 답변주신 코드에서 일부 수정하여 아래와 같이 코드를 실행해 보면 제대로 작동되지 않습니다. ChatGPT에 물어봐도 정확한 문제원인과 해결책을 알려주지 않아서 질문 올립니다. 제가 원하는 기능은, 바탕화면의 combine 폴더 안에 n개의 hwp파일을 위치 시킨 상태에서, 코드를 실행하면 hwp 문서들을 순서대로 끼워넣기 하여 "취합본.hwp"으로 저장하는 기능입니다. 지난 번에 일코님이 알려주신 코드는.. "개구리.hwp, 너구리.hwp, 다람쥐.hwp, 라마.hwp, ... "를 먼저 생성하고 나서 "취합본.hwp"을 만들어 내는 방법이었으므로, "# 샘플문서 생성"에 해당하는 코드를 제거하고 제가 원하는 기능으로 작동하기를 기대했습니다. 위와 같이 바탕화면의 combine 폴더 내에 1.hwp, 2.hwp, 3.hwp, 4.hwp, 5.hwp 문서를 넣어 두고 해당 폴더가 활성화된 상태에서 아래의 코드를 실행시켰습니다. from pyhwpx import Hwp # 임포트 hwp = Hwp() # 한/글 실행 import os # 끼워넣기 hwp.open(os.listdir()[0]) # 첫 번째(0) 파일 열기 for i in os.listdir()[1:]: # 첫 번째(0) 파일은 제외하고 두 번째(1)파일부터 아래 들여쓰기한 코드 반복 hwp.MoveDocEnd() # 한/글의 문서 끝으로 이동해서 hwp.BreakPage() # <----------------------- 페이지나누기(Ctrl-Enter) hwp.insert_file(i) # 문서끼워넣기(기본값은 섹션, 글자, 문단, 스타일 모두 유지) hwp.save_as("취합본.hwp") # 반복이 끝났으면 "취합본.hwp"로 다른이름으로저장 hwp.Quit() # 한/글 프로그램 종료 그러니까 원하는 대로 작동되지 않고 아래와 같이 나타납니다. [질문] 위의 코드는 왜 제가 원하는대로 작동이 되지 않는지? 또 그 해결방법은 무엇인지? [추가질문] 아래 코드 4줄은 한/글 자동화 코딩에서 거의 필수적으로 항상 쓰는 것 처럼 이해했었는데요. 위의 코드를 짜 주실 때 아래 4줄의 코드는 전혀 사용하지 않으셨었는데, 그 이유를 알 수 있을까요? import win32com.client as win32 hwp = win32.gencache.EnsureDispatch("hwpframe.hwpobject") hwp.XHwpWindows.Item(0).Visible = True hwp.RegisterModule("FilePathCheckDLL","FilePathCheckerModule") 궁금합니다. 답변 부탁드립니다. 감사합니다.
설마 소스코드가 잘못 되었을 거라고는 상상을 못하고,,, 아무리 이것저것 설정을 바꾸고 새로 시도해봐도, 강의처럼 되지 않아서 하루종일 고생했습니다.... bounce되는 타일과 충돌했을 경우, 타일이 바운스되어야 되는데 그것이 안되요. 그래서 처음에는 내가 잘못 따라한 것인가 싶어서 강의를 몇번 돌려보고 확인하고, 코드도 확인하고, 배포한 소스코드랑도 비교해 보아도 도저히 답이 안나왔습니다. 그런데, 강사님은 해당코드로 작동이 잘 되니... 이상합니다. 우선, 플레이어가 타일과 부딪치면 타일충돌체에 맞아서 아래로 튕겨나옵니다. 그래서 ResetVelocityY를 해 줄 필요가 없습니다. 위로 솟아서 날라가지 못해요. 저절로 충돌되어 튕겨나오면서 아래로 내려옵니다.(혹시 mass를 늘려서 힘이 강하게 되면 모르겠습니다.) 진짜 문제가 된 부분은 UpdateAboveCollision() 메소드 부분입니다. if( movement.Velocity.y >=0 && movement.HitAboveObject !=null) 이렇게 조건을 걸어놓았는데, 플레이어가 타일과 충돌하면, 충돌하는 순간 속도가 0 가 되고 곧바로 아래로 떨어지면서 속도가 마이너스가 됩니다. 그런데, 위 조건에서는 속도가 0 보다 클 경우로 하니, 이 조건을 만족하지 못해서 그 아래의 코드가 실행되지 못합니다. 제가 충돌할 때의 플레이어리디드바디속도를 출력하니 모두 마이너스였습니다. (다른 스크립트에서 속도를 읽을 때는 충돌시점에서 0.0001라도 경과한 시점) 그래서 위 조건을 충족하지 못하니, 충돌해도 타일이 위로 바운스 되지 못했었습니다. 그래서 void UpdateAboveCollision (){ if ( movement . HitAboveObject != null ){ 이 조건으로 하면 됩니다. 여기서 ResetVelocityY() 도 호출할 필요 없습니다.
현재는 주문하기 버튼을 클릭하는 순간, 주문정보와 결제정보가 같이 생성되는데 예제이나 보통의 쇼핑몰에서는 결제 시점에 주문정보와 결제정보가 생성되겠죠..? 알리익스프레스의 경우 결제 도중에 취소하면, 결제대기? 비슷하게 주문목록에 남았던 것 같긴합니다. 근데 관리차원에서는 결제가 정상적으로 완료되는 시점에서만 주문과 결제정보를 생성하는게 좋을 것 같은데.. 이 과정에서 로직 상 문제가 될만한 점이 있을까요.?
여러 개의 한글 문서를 '문서 끼워 넣기' 기능을 이용해 합치는 방법 문의 -- 박주현 -- 24.10.17 14:56 관련입니다. 해당 문의에 대해 아래와 같이 코드를 답변 주셨었는데요. from pyhwpx import Hwp # 임포트 hwp = Hwp() # 한/글 실행 # 샘플문서 생성 # 샘플문서 생성 import os os.chdir("c:\\users\\user\\desktop\\combine") for i in [ "개구리", "너구리", "다람쥐", "라마", "미어캣", "방울새", "사자", "얼룩말", "지렁이", "참새", "코끼리", "토끼", "펭귄", "호랑이", ]: hwp.SelectAll() hwp.Delete() hwp.set_font(Height=40) hwp.insert_text(i) hwp.save_as(f"{i}.hwp") # 끼워넣기 hwp.open(os.listdir()[0]) # "개구리.hwp" 열기 for i in os.listdir()[1:]: # 첫 번째(0) 파일은 제외하고 두 번째(1)파일부터 아래 들여쓰기한 코드 반복 hwp.MoveDocEnd() # 한/글의 문서 끝으로 이동해서 hwp.insert_file(i) # 문서끼워넣기(기본값은 섹션, 글자, 문단, 스타일 모두 유지) hwp.save_as("취합본.hwp") # 반복이 끝났으면 "취합본.hwp"로 다른이름으로저장 hwp.Quit() # 한/글 프로그램 종료 인터프리터 버전의 문제 및 pyhwpx 패키지 설치 등의 문제가 있었지만 그것들은 해결하였고, 코드가 동작하는데까지는 성공하였습니다. 일코님의 결과물과 제 결과물이 다릅니다. 일코님의 결과물은 아래 스크린샷과 같습니다. 반면에, 저의 "통합본.hwp"을 열어보면, 한 페이지마다 하나의 동물 이름이 입력되어 있는 것이 아니라 한 페이지 안에 모든 13개의 동물 이름이 아래 괄호 안과 같이 붙어 있는 형태입니다. (개구리너구리다람쥐라마미어캣방울새사자얼룩말지렁이참새코끼리토끼펭귄호랑이) 아래 스크린샷은 제 노트북 화면이니 함께 참고 부탁드립니다. 같은 코드인데 왜 결과가 다른지 혹시 이유를 문의드려도 될까요? 혹시 끼워넣기 할 때 새 페이지로 넘기기 한 후 끼워넣을 수 있는 코드가 있는지 아시는지요? 참고로, 제가 수동으로 빈문서를 열고, 끼워넣기(ctrl-o)를 통해 글자모양유지, 스타일유지, 문단모양유지, 쪽모양유지 체크한 상태에서 넣기 하면, 다음 페이지로 넘긴 상태에서 끼워넣기가 잘 됩니다. 반면에 제가 파이참에서 위 코드를 넣고 실행했을 때는 다음 페이지로 넘긴 상태에서 끼워넣기가 되는 것이 아니라 본래의 페이지의 맨 하단 커서 위치 뒤로 붙으므로 의도하는 결과가 아닙니다.
안녕하세요! 이번에 새롭게 강의를 듣기 시작하게 된 sunny라고 합니다! 학습용 DB를 설정하고 있는 상황인데됴! 말씀주신대로 code를 다운로드 받고, 사용 폴더로 이동시킨 후 npm i , Supabase 설정하여 .env 파일에 DATABASE_URL 변수까지 잘 설정해주었습니다. 이후 과정인 npx prisma db push 과정에서 소요시간이 너무 오래 걸려서.. 혹시 제가 확인해볼 수 있는 방법 혹은 예측되는 상황이 있으실까 하여 질문드리게 되었습니다!! ㅠㅠ 혹시 몰라 node_modules 폴더 삭제 후 재실행 했는데도 동일한 현상이 발생하고 있는데.. 제가 확인해볼 수 있는 부분들이 있을까요?? 감사합니다!