묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
8-X 강사님 코드 중 사소한 부분에 대한 질문이 있습니다.
안녕하세요.강사님 해설 코드에서 중요한 부분은 아니지만 제 코드와 비교하는 과정에서 사소한 의문이 드는 부분이 있어 질문드립니다. https://www.acmicpc.net/source/share/52caf2495c83482fb5912f0c5cbbf935위 링크의 강사님 코드 중에서 60번째 줄의int next_height = max(height[y][x], min(hole[y][x][i], height[ny][nx]));이 부분에서 next_height을 구하는 과정에서 height[ny][nx]을 넣을 필요가 없다고 생각됩니다. 코드 논리 상으로만 봤을 때 next_height가 hieght[ny][nx]값이 되게 되면 어차피 아래 if문if(height[ny][nx] > next_height) 에서 걸러지기 때문에 어차피 next_height가 height[ny][nx]가 되는 게 유의미해지는 경우는 없습니다. 문제의 개념을 알고리즘으로 변환하는 과정에서도 설명해보자면, 우선순위큐에 우선 가장 바깥칸을 넣습니다. 맨 처음에 물탱크에 물을 가득 채운후에 가장 먼저 물이 빠져서 물높이가 낮아지는 칸들입니다. 이 칸들을 우선순쉬큐에 넣고 다익스트라 알고리즘으로 돌림으로써 물높이가 낮은 칸들의 인접한 칸에서 구멍을 통해 물이 흘러 들어오게 됩니다. (여기서 물높이가 낮은 칸 (우선순위큐에서 나오는 칸)은 흐름 상 더 높은 물높이를 갖는 칸입니다. 물론 물높이가 더 낮다면 고려할 필요가 없겠죠. 물 높이가 더 낮은 인접한 칸에서 물이 빠져나갈수는 없으니까요)현재 탐색중인 칸에 인접한 물높이가 더 높은 칸에서 현재 물높이가 낮은 칸으로 물이 이동하는데 물높이가 낮은 칸은 결국 탐색해온대로 물높이가 더 낮은 칸 또는 바깥과 연결되어 물높이가 유지되고 인접한 칸은 물이 줄어드는 상황이 다익스트라 알고리즘이 반영된거라고 생각합니다. 그래서 큰돌님께서 강의에서 설명하신대로 (3:00 쯤 부분) 그림이 있을 때 바깥으로 물이 빠져 왼쪽에 물높이가 4, 오른쪽에 물높이가 1이고 구멍이 높이 3에 있을 때 양쪽 물의 높이가 3, 3으로 되는 것이 아니라 왼쪽 물이 높이가 3이 될 때까지 오른쪽으로 흘러가고 오른쪽은 물높이가 그대로 1이 유지되는 것이 자연스러운 설명이고 코드와 다익스트라 알고리즘에도 자연스럽게 설명이 되고 반영이 된다고 생각합니다.이렇게 하면 위 코드를 문제 흐름 상 자연스레 아래처럼 표현이 가능하다고 보여집니다.(코드 자체만으로 봤을 때도 그렇긴 하지만요.)int next_height = max(height[y][x], height[ny][nx]); 큰돌님께서는 제 생각에 대해서 어떻게 생각하시는 지 피드백 부탁드립니다...!항상 빠르고 좋은 답변 감사드립니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
머신러닝 New 강의 관련
머신러닝 New 강의가 준비중으로 일부 업로드 되어 있는데,혹시 언제쯤 다 업로드 완료되는지 궁금합니다~!^^ 업로드가 다 되어 있는 Old 강의로 준비하는게 나을까요,아니면 업로드 되어 있는 New강의를 듣는게 나을까 해서요!
-
해결됨코딩 없이 AI 자동화 전문가가 되는 법, n8n 완벽 가이드
gmail 인증 실패 문제
안녕하세요 남박사님 8. Gmail 연동부터 자동 응답까지: 이메일 AI 에이전트 완전 구축법 21:27 ・ 수업 자료 강의를 듣던 와중에,강의에서 알려주신 대로 진행해서 지메일 이메일 트리거를 하려고 했으나2단계 비밀번호를 넣고 "test step" 을 눌렀는데작업이 끝나질 않습니다... 왜일까요?
-
미해결비전공자도 이해할 수 있는 AWS 입문/실전
비용질문있습니다
EC2, 로드밸런서 탄력적 IP는 삭제 하였으나.https 인증서 같은 부분은 추가 비용이 발생하지 않는지 궁금합니다!
-
해결됨한 입 크기로 잘라먹는 Next.js(v15)
백엔드 서버가 존재할 때에도 서버 액션을 사용하는 것이 바람직할까요?
안녕하세요! 서버 액션에 관해 궁금한 점이 생겨 질문드립니다.일단 제가 강의를 보고 실습하면서 느꼈던 서버 액션의 큰 장점은 다음과 같습니다.브라우저에서 서버 측에서 사용되는 함수를 실행할 수 있다. => 별도의 백엔드 API를 구현하지 않고도 DB에 직접적으로 접근하는 등의 작업이 가능브라우저와의 상호작용을 하면서도 컴포넌트를 서버 컴포넌트로 유지할 수 있다. 하지만 1번 장점의 경우 혼자 풀스택으로 개발하지 않고 백엔드 개발자와 함께 개발하는 경우에는, 주로 이번 강의와 같이 서버 액션 함수 내에서 별도의 API를 호출하게 될 것이라 생각됩니다.이런 경우에도 기존의 방식대로 onSubmit 등을 사용해서 API를 호출하는 것보다, 2번 장점을 위해 서버 액션을 사용하는 것이 바람직 할지 궁금해 질문드립니다!state를 이용해 실시간 validation이 이루어져야 하는 곳이 아니라면 유용할 것 같다고 생각이 들지만, 구글링을 해봐도 최신 기술이라 그런지 실제 적용 사례를 잘 찾아볼 수 없어 질문 드립니다!
-
미해결실무자를 위한 구글애널리틱스(GA4+GTM) 활용법(25년 Update)
페북 인스타광고 utm medium 설정
안녕하세요. 보통 실무에서 페이스북이나 인스타그램 광고를 돌린다하면 피드광고라고 디스플레이 광고 형태로 진행하게 되잖아요. Q1. 혹시 주로 실무에서는 소셜광고 집행할 때 medium 설정을 cpc로 많이 하는지요? 아니면 display나 banner로 많이 사용하는지요? Q2. 지금은 ga4 기본 채널 그룹이 이전보다 세분화되어서 facebook/cpc로 설정하면 paid search가 아닌 paid social 로 잡히는게 맞나요?Q3. 페이스북 피드광고를 집행한다고 하면, 실무에서 ga 데이터를 볼 때 기본 채널 그룹명이 paid social로 나오게 주로 세팅하는지, 혹은 display로 나오게 세팅하는지 궁금합니다. 아니면 이런 부분은 회사마다 기준이 다 다른지요?
-
미해결실전에서 바로 써먹는 Elasticsearch 입문 (검색 최적화편)
안녕하세요 선생님 Elastic Cloud 비용 관련해서 질문 드립니다.
의지 할 곳이 선생님 밖에 없어서 이렇게 질문 드립니다 ㅠ,ㅠ우리 회사에서 Elastic Search 를 이용해서 검색 기능을 서비스 출시 하고자 합니다. 참고로 데이터는 20~30만건 정도 됩니다. Elastic Cloud 에서 비용에서 각각 기능에 따라 등급이 있더군요. Standard Gold Platinum Enterprise 차이 간단하게 이렇게 검색해서 한번 확인 해보니깐 잘 나와 있긴 합니다만... 아무래도 선생님이 제공해주신 강의 보고 처음 접해보고 이것을 상용에서 적용 하고자 하니 비용적 부분에서 고민을 안 할 수가 없습니다. Enterprise 으로 갈수록 비용이 2배로 가긴 하지만 기능을 더 제공해주는 것 같습니다.하지만 저희는 20~30만개 정도 데이터를 활용 및 서치 기능을 구현하는 것이고기능도 선생님께서 알려주신 기능 안에서 해결이 가능 할 것 같습니다. 정리하자면20~30만개 정도 데이터를 이용해 검색 기능 제공 해야함 (앞으로 데이터 추가는 예상 됩니다.)기능은 선생님이 알려주신 기능에서 충분히 가능 할 것 같습니다.가능한 모니터링 기능이 있었으면 좋겠습니다. 그럼 standard 도 괜찮은 선택인지 알고 싶네요. 아무래도 회사가 큰 규모가 아니다 보니 비용적 부분에서 생각 안 할 수가 없습니다. (모니터링 기능도 있었으면 좋겠네요.) 다시 한번 영상 강의 만들어 주셔서 감사드리고 앞으로 더 좋은 강의 기대하도록 하겠습니다. 응원합니다. 감사합니다 :)
-
해결됨[Unity] 직접 구현하는 게임 알고리즘 & 게임 시스템 구현
수업코드 git이 있을까요?
안녕하세요 수업코드를 다운로드 받을수 있는 git이 있을까요?
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
build.gradle 오류? 사항
코드팩토리 디스코드에 질문하면 더욱 빠르게 질문을 받아 볼 수 있습니다![코드팩토리 디스코드]https://bit.ly/3HzRzUM - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.build.gradle에서 code insight unavailable이라고 뜨는데 link gradle project에서 다른 외부 build.gradle을 연결해도 새로운 오류가 발생합니다. 연결을 안해도 되는 걸까요?
-
미해결서비스기획 & 프로덕트 매니저(PM)의 첫걸음[입문]
강의자료 파일 문의
질문 가이드 (*이렇게 하면 더욱 의미있는 답변을 드려요!)현재 상태 : 실무서비스기획/PM/PO 경력 : 2년기타 경력 : -강의 수강 이유 : -질문 : 안녕하세요 강의 자료 어디서 받을 수 있을까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
판다스2 1:50
1:50에서 astype안에 따옴표를 넣지않고 그냥 float만 넣고 실행을 시켜도 오류없이 실행이 되는데 꼭 작은따옴표를 써야되는 이유가 있는건가요? 혹시나 따옴표를 쓰지 않는다면 문제가 생기게 되는건가요?
-
해결됨블렌더 그리스펜슬 베이직 클래스
카메라 와 랜더링 설정에서..
도저해 해결이 안되어서 여기에서 질문할께요..카메라과 랜더링 공부하면서 서클과 커브 등 에 연결시키는 작업을 했었는데요..랜더링 과정에서는 제대로 보이는데 모든 결과물이 어안랜즈로 거꾸로 촬영한듯한 영상으로 출력이 됩니다..심지어 블랜더를 지우고 다시깔았는데도 그대로 입니다(삭제하고 다시 설치해도 셋팅이 그대로 다 남아있어요)..설정을 여러가지 많이 만져서 어디서 잘못되어 있는지 도저히 찾을수가 없습니다..어떻게 해결해야 될까요..ㅠㅠ
-
미해결실무자를 위한 구글애널리틱스(GA4+GTM) 활용법(25년 Update)
네이버 검색과 브랜드검색 치환변수 문의
안녕하세요. 네이버 키워드 광고와 브랜드 검색광고 utm 설정 시, 키워드 광고는 utm_term={keyword}를 붙이고 브랜드 검색은 utm_term={query}로 적어주셨는데요!Q1. 네이버 키워드와 브검 utm 세팅 시 저 방식으로 무조건 고정으로 쓰면 되나요?Q2. 키워드와 쿼리 차이는 광고에 등록한 키워드냐 자연 검색어냐 인 것으로 보이는데, 네이버 키워드 광고에서 utm을 keyword로 달면 광고로 등록되지 않은 검색어는 ga에서 확인이 안되는지요?반대로 브검 utm도 query로 달면 광고로 등록된 키워드는 확인이 안되는지요?
-
미해결따라하면서 배우는 고박사의 유니티 기초
05-02 실습에서 마지막 부분을 해보니 죽는 키를 누르면 die 가 두번 재생됩니다
강의 마지막 부분을 실습할 때 저번 강의의 platformer에서 사용했던 코드에 Die부분들을 덧붙이고 z키를 누르면 playerDie로 전환되게 설정해놓았습니다. 그런데 실행시키고 animator 창을 보면 z를 눌렀을 때 idle에서 die로 넘어가고 die가 전부 실행된 후 idle로 다시 넘어갔다가 자동으로 die를 한번 더 재생하는 현상이 발생했습니다. 그런데 두번째 die실행에서는 'End of Die Animation' 이 나오지는 않습니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
store를 List로 만들지 않고, Map으로 만든 이유가 궁금합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요. store를 List로 만들지 않고, Map으로 만든 이유가 궁금합니다.더 효율적인 뭔가가 있는지요?
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
8:54
8:54 초에 답 출력을 할 때요.상속이면 부모 먼저 출력한다고 해서Start Car created 까지 이해가 되는데왜 그다음이 Engine started가 아니고, electric car created 인지 이해가 안되네요.ㅠ
-
해결됨LangGraph를 활용한 AI Agent 개발 (feat. MCP)
멀티턴, MemorySaver,MessagesState 질문 입니다
안녕하세요 강의 보다가 헷갈리는 부분이 있어서 질문드립니다 질문1. 3.3 LangGraph에서 도구(tool) 활용 방법아래 agent 함수는 여러번 호출되는데 리턴하는 부분에서 새로운 배열을 만드는것 처럼 보이지만 add_messages에 의해 자동으로 누적되어 멀티턴 대화가 된다고 이해하면 맞을까요? def agent(state: MessagesState) -> MessagesState: """ 에이전트 함수는 주어진 상태에서 메시지를 가져와 LLM과 도구를 사용하여 응답 메시지를 생성합니다. Args: state (MessagesState): 메시지 상태를 포함하는 state. Returns: MessagesState: 응답 메시지를 포함하는 새로운 state. """ # 상태에서 메시지를 추출합니다. messages = state['messages'] # LLM과 도구를 사용하여 메시지를 처리하고 응답을 생성합니다. response = llm_with_tools.invoke(messages) # 응답 메시지를 새로운 상태로 반환합니다. return {'messages': [response]} 질문2. 3.5 Agent의 히스토리를 관리하는 방법MemorySaver()의 목적은 주피터 노트북 각 블록을 사용하는데 있어 그 전에 실행해서 얻은 message를 메모리에 저장후 다음 요청 (update_query)에 반영하기 위해 사용된게 맞을까요?
-
미해결LangGraph를 활용한 AI Agent 개발 (feat. MCP)
새로운 메시지에 summary 추적 질문드립니다.
from langchain_core.messages import SystemMessage def agent(state: AgentState) -> AgentState: """ 주어진 `state`에서 메시지를 가져와 LLM과 도구를 사용하여 응답 메시지를 생성합니다. Args: state (AgentState): 메시지 기록과 요약을 포함하는 state. Returns: MessagesState: 응답 메시지를 포함하는 새로운 state. """ # 메시지와 요약을 state에서 가져옵니다. messages = state['messages'] summary = state['summary'] # 요약이 비어있지 않으면, 요약을 메시지 앞에 추가합니다. if summary != '': messages = [SystemMessage(content=f'Here is the summary of the earlier conversation: {summary}')] + messages # LLM과 도구를 사용하여 메시지에 대한 응답을 생성합니다. response = llm_with_tools.invoke(messages) # 응답 메시지를 포함하는 새로운 state를 반환합니다. return {'messages': [response]}부분에summary = state['summary']agent시작하자마자 summary를 넣게되는데 해당 소스부분은 몇 번을 질문해도 처음에는 빈값이 들어가는게 맞나요?summary를 연속질문에 처음 시작 부터 적용하기 위해서는 아래처럼 session정보를 받아서 처리해야하는지 궁금합니다.from langchain_core.messages import HumanMessage query = '안녕' for chunk in graph.stream({'messages': [HumanMessage(query)], 'summary': graph.get_state(config).values['summary']}, config=config, stream_mode='values'): chunk['messages'][-1].pretty_print()
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
@Transactional 어노테이션을 썻지만, h2 DB가 롤백이 되지 않습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]***문제해결****JDBCRepository 구현시이걸 안 붙혀넣고이렇게 써서 생긴 오류인 것 같습니다.. 다른 질문글에서 보고 알았습니다 하하..***************@Transactional 어노테이션을 썻지만, h2 DB에서 롤백이 되지 않습니다.롤백이 되지 않은 이유가 스프링 버전과 h2 버전이 바뀌어서 그런건가요?테이블을 초기화하고 스프링통합memberServiceTest 를 진행하니 회원가입한 정보가 테스트가 끝난 후 DB에 고스란히 남아있었습니다.#스프링 환경Java-> 17spring->3.4.3h2 : 2.3.232-> 서버모드 접근함(jdbc:h2:tcp://localhost/~/test)#알아본것h2에 서버모드로 접근하면, spring->네트워크->h2이렇게 접근이 되어서 외부에 있는 DB는 롤백을 안한다고 들었습니다.다른 곳에서도 접근해서 고칠 수 있기 때문에,,그래서 대신 메모리모드를 사용하라고 답변을 들었습니다.
-
미해결쿠버네티스 어나더 클래스-Sprint4 (#Promethues #Grafana #Loki #OpenTelemetry)
server-side옵션에 대해 궁금합니다.
annotations: kubectl.kubernetes.io/last-applied-configuration 부분을 kubectl에서 내용을 업데이트해준다 .kubernetes에서 알아서 내용들을 업데이트 해준게 아니라. 클라이언트가 동시에 리소스에 수정하게 될때 충돌을 관리하는데 유리하다. 그래서 server-side옵션을 주면 서버가 주도해서 이 리소스에 대한 모든 내용을 수정관리 해주기 때문에 리소스에 대한 충돌이 일어나지 않는다. . 모든 리소스가 이렇게 server-side로 관리하면 kubernetes가 부담되기 때문에 클라이언트가 이런내용들은 알아서 계산해서 저장 할때 같이 반영한다.이렇게 말씀하셨는데요...저 annotation부분의 내용은 실제 아래 리소스 yaml내용을 반영을 했다 client가~~~ 이런의미인가요?근데 저렇게 annotation 바로 밑에 kubectl.kubernetes.io/last-applied-configuration 항목에 저 내용들이 들어간들 무슨 의미가 있는지 궁금해요..실제 필요한건..그밑에 name,namespace 나 spec 이하부분들이 중요한거 아닌가요?거기에 추가로 server-side로 하면 client다른 수정과 충돌을 피한다고 했는데실무에서 운영인데 함부로 누가 같은 리소스를 따로 공유도 없이 수정할려고 들까요? 그런 상황이 있을리 만무하지 않나싶어요...그래서 결론은 client에서 누군가 수정을 동일리소스에 할거 같아서 server-side옵션을 주는건 발생하기 희박할거 같단 생각이 들고.그리고 yaml안에 last-applied-configuration이라 내용의 쓰임이...단순이 그냥 정보성정도아닌가 여쭤봅니다. 저 값들로 뭔가 하지않을것 같아서요