묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
격자탐색 문제에서 BFS 시간복잡도 질문드립니다.
안녕하세요!강의 잘 듣고 있습니다.문제를 풀다가 시간복잡도 계산에서 궁금한 점이 있어서 질문드립니다.구체적으로,백준 보물섬 문제와 같은 격자탐색 문제에서격자의 가로가 W, 세로가 H라고 할 때 BFS 시간복잡도를 대략 O(W*H)라고 생각하면 될까요?감사합니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
정말 감사히 듣고 있습니다..!! 질문이 몇가지 있습니다..!
강의 너무 잘 듣고 있습니다. MMO RPG를 너무 만들어보고 싶었는데.. 이런 귀한 내용들을 자세히 설명해주시는 분이 있다니.. 정말 큰 도움이 됩니다 다름아니라 해당 강의를 듣다가 문득 궁금해지는 점이 있어 실례안된다면 간략하게라도 의견을 듣고싶어 여쭙게 되었습니다...! 질문은 2개 입니다..!(현재 저는 4챕터까지만 듣고 질문을 드리는 상태임을 미리 말씀드립니다)MMO RPG 서버는 scale out 을 어떻게 할까?? 에 대한 궁금증 입니다.스케일 아웃의 방법을 보통 어떻게 하게 되는지 궁금해져서 여쭤봅니다(제가 부족한지 검색을해도 구체적인 방법들이 잘 안나오는 것 같아서.. 간단하게라도 보통 어떻게하는지 궁금하네요..) 만약 1,2,3,4,5,6,7... 100 맵이 있다고 가정하고, 1번맵에만 유저들이 정말 많아서 하나의 서버로 감당이 부담스럽다고 했을때, 1번 맵을 위해 2개 3개의 서버를 투입하는것이 가능할까요..?왠지 강의를 들었을땐 1번맵의 서비스를 1개의 서버로 밖에 못하지 않을까.. 싶은데.. 우선 제가 생각해본 방식은.. 아래와 같습니다- 1번맵의 경우에는 send할 내용들을 한 서버의 메모리에 두는게 아니라 레디스라는 메모리DB에 저장을 한다- 3개 혹은 4개정도 되는서버가 이 레디스를 바라보고 데이터를 가져와서 연결된 클라이언트들에게 데이터를 전송흠.. 그런데 이렇게하면 속도가 충분히(?) 빠를지에 대한 의문이 들어서 보통의 MMO RPG 서버들에서 이런식으로 scale out을 하는게 맞는방식인지 감이 오지않아 질문 드립니다.MMO RPG 서버는 만약 로직을 수정한다고 한다면 서버점검같은걸 하지 않고 해당로직을 수정해서 배포가 가능할까요??강의내용에서는 서버의 메모리에 유저들의 정보를 다 갖고있어야할 것 같고... 그렇게 되면 중간에 로직을 수정해서 새로운 서버를 띄우고 기존서버를 죽이게되면.. 해당 서버에 접속해있던 유저들이 다 튕기게 되지 않을까 싶어서요. 유저들이 인지하지 않게 편안하게 서버내용을 바꾸는것이 MMO RPG 서버에서 가능할까요..? 끝까지 읽어주셔서 감사드립니다. 강의 정말 잘 듣고 있습니다!!
-
미해결데이터 분석 SQL Fundamentals
anayltic sql, 조인, 서브쿼리 셋중 어떤걸 쓰던 상관이 없나요?
강사님, 서브쿼리 실습 -01에서 다루셨던것 처럼위의 3가지 방법(anayltic sql, 조인, 서브쿼리)은 다르지만 결국 같은 값이 나옵니다.제 생각에는 가장 가독성이 좋은건 where절 서브쿼리 인거 같고, 조인은 불필요한 행까지 다 가져오므로 무거워 질거 같고, 개인적으로 analytic sql 사용시 가장 직관적으로 느껴지기에 이해하기 쉬워서 많이 쓰고 있습니다.모로 가도 서울만 가면 되긴 하지만, ㅎㅎ 강사님께서 추천해주신다면 어떤걸 쓰는게 현실 업무 혹은 협업 과정에서 좋을까가 궁금해서 질문 드려봅니다!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-O go 함수 질문 드립니다.
안녕하세요 강사님풀이 해주신 코드 기준 go 함수의 이중 for loop 에서, 변수 i 가 가로선의 index 를 나타내는 것으로 이해하고있는데for loop 에서 변수 i 의 시작이 왜 here 부터 시작해야하는지 이해가 잘 되지 않아서요.cnt = 0 에서 가로선 1개를 놓고, cnt = 1 에서 또 가로선을 1개 더 놓게 되는 상황에서cnt = 0 에서 놓았던 가로선 보다 같거나 아래 위치에 가로선을 놓아야한다는 조건이 어떻게 도출된 것인지 궁금합니다.(가로선을 놓을 때 접하거나 연속되지 않아야 한다는 조건은이중 for loop 안에 if 문에서 걸러지는 것으로 이해하고 있습니다) (변수 i 의 시작을 0 으로 고정하면 시간 초과가 되는 것은 확인했습니다..)
-
미해결[리뉴얼] 처음하는 파이썬 데이터 분석 (쉽게! 전처리, pandas, 시각화 전과정 익히기) [데이터분석/과학 Part1]
전처리4 영상 2분15초 ~20초
def country_name_convert 질문입니다.1.영상에는 이런식으로 되어있는데, 아래예제처럼 하면 안되는건가요, 그리고 첫번째 사진 코드에서 마지막에 return row['Country_Region']을 안하니까 2개의 행만 나오던데 3번째 줄을 한거랑 2번째줄 까지만 한건 무슨 차이인가요?2.예제처럼 하니까 오류가 생성됩니다. 위의 두코드가 어떤 차이인지 쉽게 설명해줄수 있으신가요?? 왜 안되는지
-
미해결프로젝트로 배우는 React.js
toastSlice를 store에등록할 때 질문있습니다.
안녕하세요~ 강의 71강 5분 20초쯤toastSlice에서 export default toastSlice.reducer; 로 내보냈는데요.이걸 store에 등록할때, import toastReducer from './toastSlice' toastSlice가 아닌 toastReducer로 이름이 변경된것인가요? 강의처럼 이름을 마음대로 변경해서 가져오고 경로만 맞으면 되는건가여?
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
setState 사용 차이
강의 잘 보고 있습니다.강의가 너무 좋아서 책도 함께 구매하려고 합니다.좋은 강의 감사합니다. 다름이 아니고 질문이 하나 있어 이렇게 글남깁니다. 플루터에서 setState는 화면을 갱신하는 용도로 사용하고 있다고 알고 있습니다.만약에 a= 10이라고 설정한다고 가정하면setState(() { a = 10; });a = 10; setState( () { } ) 1번 로직과 2번 로직이 내부에서 어떤 차이점이 있을까요?테스트 해본결과 1번, 2번 모두 정상 작동하더라구요 -----------------------------------------------공부하다 추가 질문이 있어 문의 드립니다.플루터에서 네임드 라우팅을 materialApp에 설정할때 특정 페이지에 필수 파라미터가 존재하면 어떤식으로 등록을 해야 할까요?예 )가정 : Two 페이지는 str값을 필수 파라미터로 받고 있습니다. routes: {"/": (context) => One(),"/two": (context) => Two(str : ??), },이게 안되면 아래와 같은 방법으로 파라미터를 설정해야 하는지 궁금합니다!var two = Two();two.str = "asdf";Navigator.of(context).push(MaterialPageRoute(builder: (_) => two));
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
4-A 출력 질문
안녕하세요 큰돌님!!덕분에 늘 좋은 강의 잘 듣고 있습니다. https://www.acmicpc.net/source/share/6fd1c581d7154d70a7523d1151aec4034-A를 공부하다가 질문이 있어서 게시글 남깁니다.제가 헷갈리는 부분은 이렇습니다. Q1. ret_v는 map자료구조인데요, ret_v[ret]과 같이 map에 접근한다면 ret이라는 키 값을 갖는 요소가 리턴되지 않나요? 그 요소는 vector 아닌가요..? Q2. 더 자세한 질문은 이렇습니다. sort()를 할 땐, ret_v[ret].begin()과 ret_v[ret].end()처럼 ret_v[ret]이 vector라고 가정하고 그 vector를 정렬하는 것처럼 보입니다. 그렇다면 ret_v[ret]는 vector를 리턴하는게 맞지 않나요? 이게 맞다면 Q1의 결과에 위배되는 것 아닌가요? 이 부분이 정말 헷갈립니다.Q3. 덧붙이자면, 해당 문제의 출력은 범위기반 for문을 통해 정답을 출력합니다. 그런데 for(int a : ret_v[ret]) 과 같이 접근하면 syntax오류가 뜨는건가요? sort()에서는 ret_v[ret]이 vector로 잘 인식했으면서.. 정답코드는 왜 ret_v[ret][0] 까지 명시해줘야 syntax오류가 없는건가요? 조금 질문들이 복잡해 보일 수 있겠지만, 디테일 측면에서 헷갈리고 있어서 어떤 개념이 약한지 보완하고 싶은 마음에 궁금한 부분을 모두 적었습니다. 가독성이 떨어진다면 다시 질문을 정리하여 올려보도록하겠습니다. 모쪼록 큰돌님의 답변을 기다리고 있겠습니다.감사합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
스프링부트 3.0에서 실행할때.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 안녕하세요 질문드릴려고합니다.스프링부트 3.0에서 영한님의 강좌에서 jpa실습중그레이들 추가했음에도 불구하고..EntityManager import가 되지 않아서 ...찾아보니까..import javax.persistence.EntityManager; 을 지원하지않더라구요대신import jakarta.persistence.EntityManager; 찾았는데..에서 에러가 나옵니다 이것을 변경하는 방법이 있을까요?Querydsl부분은 잘 모르겠는데.. 처음부터 어렵게 등장해 당황스럽네요 ㅠ.ㅠ혹시 아시는분계시면 부족한 제 견해 좀 깨달음을 주셨으면합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
study 파일 어떻게 해야되나요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 1.study 파일이 없네요 제가 만들어서 해야되는건가요?study 빌더 파일 은 어디서 가지고 와야되나요?
-
해결됨스프링 시큐리티 OAuth2
AuthorizedClient 질문
OAuth2AuthorizedClient 의 클라이언트가클라이언트 서버를 의미하는 지리소스 오너의 정보를 의미하는 지 헷갈립니다.ㅠㅠ 클라이언트 서버에서 인증 받은 클라이언트라고 하면이걸 서버 입장에서의 사용자를 이야기 하는 건지무엇을 얘기하는 지 헷갈리네요..
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
model.addAttribute / .addAttribute 가 자동완성에 안뜹니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.모델은 자동완서으로 가능..add에 .addAttribute 가 나오지않고 타자로 써도 빨간글씨로 뜹니다ㅠㅠ
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1주차 1-O 질문드립니다
안녕하세요, 큰돌님위의 그림은 제가 1주차 1-O 문제를 어떻게 풀지 나름대로 전개를 해본 그림입니다.이를 코드로 변환하는 중, 정답이 계속 틀려서 확인해보니 큰돌님 코드에서는 빨간색 밑줄 친 부분의 코드가 분홍색으로 밑줄 친 부부인 (1%n), (11%n) 부분만 계산하는 코드를 확인하였습니다. 제가 전개한 식에서는 노란색 박스 친 부분인 (10%n)이 계속 곱해져야 하는것 같은데... 어디서 제가 실수를 한 것인지 잘 모르겠습니다. 감사합니다.
-
미해결스프링 시큐리티 OAuth2
AbstractOAuth2UserService의 @Autowired
안녕하세요 정수원님. 덕분에 스프링 시큐리티를 알아가고 있습니다. 수강 중 문의드리고 싶은 점이 생겨 질문 드립니다.customUserDetailService에서는 @RequiredArgsConstructor로 생성자 초기화를 하고 AbstractOAuth2UserService에서는 @Autowired로 생성자 초기화를 하는데 이와 같은 방식으로 생성자 초기화를 설정하신 이유를 알고 싶습니다. 답변해주시면 정말 감사드리겠습니다!
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
orphanRemoval=true, 고아 객체 질문
안녕하세요~findParent.getChildList().remove(0);강의에서 설명주신 위 코드에 대해 추가 질문이 있습니다.컬렉션에서 첫번째 child 엔터티를 제거한 경우에 고아 객체가 되어 delete 쿼리가 실행되는 것으로 이해를 했는데요.@OneToMany(mappedBy = "XXX", orphanRemoval = true)orphanRemoval만으로는 delete 쿼리가 실행되지 않고, cascade = CascadeType.PERSIST가 함께 실행된 경우에만 delete 쿼리가 실행되더라구요.@OneToMany(mappedBy = "XXX", orphanRemoval = true, cascade = CascadeType.PERSIST)혹시 orphanRemoval 설정만으로는 영속성 전이가 일어나지 않고 cascade = CascadeType.PERSIST을 추가해야지만, findParent.getChildList().remove(0); 호출시에 고아객체가 된 child 엔티티의 생명주기까지 영향을 미칠 수 있게 되어 delete 쿼리가 실행이 되는 것인지 여쭤보고 싶습니다.(즉, 'orphanRemoval'과 '영속성 전이' 설정을 독립적으로 봐야하는 것인지 궁금합니다.)감사합니다.
-
미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
Pagination 질문드립니다
안녕하세요. pagination관련해서 궁금한 게있습니다.저는 백엔드를 직접 구축하고강의를 수강하고있는데요,Order를 생성하는 provider Ordrer 리스트를 조회하는 Pagination (강의에서 진행한 방식의 Pagination Model)제가 아직 상태관리에 이해가 부족해서 그런지, Order가 생성되면List<OrderModel>에 맞추어 데이터를 담아두고 생성될 때마다 페지네이션을 상속받는 데이터 리스트들이 업데이트 돼야하지 않나하는 생각이 드는데 그렇개 작동되지 않더라구요Order를 생성하고 나서order 리스트를 볼 수 있는 페이지에 오면데이터가 업데이트 되지않습니다.어떻게해야 Creat이후 Read가 업데이트가 되나요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] 번외편: AWS로 시작하는 서버 운영
[해결]RDS MySql의 디비를 마이그레이션 하는 과정에서 질문이 있습니다.
먼저 진행한 순서는 아래와 같습니다. AWS RDS(MySQL) 생성 후 퍼블릭 엑세스 가능으로 설정하였습니다.(접속은 MySQL Workbench로 확인하였습니다.)ConnectionString 은 아마존 개발자 안내서와 강의 내 다른 분 질문에 달아주신 답변을 참고하여 작성하였습니다.SharedDB 프로젝트를 시작프로젝트로 설정할 수 있도록 Main 함수를 임시로 복원한후 SharedDBContext.cs 파일의 ConnectionString을 2에서 작성한 내용으로 설정하였습니다.시작프로젝트와 패키지 관리자 콘솔의 기본 프로젝트를 SharedDB로 설정하여 add-migration을 하여 성공하였습니다.이후 update-database 를 실행하면 아래와 같은 에러를 발생하고 진행이 되지 않습니다.위와 관련해서 질문을 정리하자면RDS의 퍼블릭 엑세스를 허용해도 제 개인 PC의 코드에서 직접 마이그레이션 하려면 ConnectionSting 외 코드에 추가적인 작업이 필요한가요?제 개인 PC에서 RDS를 마이그레이션 하려면 RDS에서 추가적으로 설정해야할 권한 등이 있을까요?(현재 보안 그룹은 강의에서 나온 모두 다 열어둔? 상태입니다.) 혹시 저와 같은 이상한? 삽질을 하시는 분이 있을까 해서 해결한 방법을 공유드립니다.NuGet 패키지 관리자에서 마이그레이션하고자 하는 프로젝트에 MySql.EntityFrameworkCore를 설치하였습니다.ConnectionString을 다음과 같이 수정하였습니다. @"Server=[DB 엔드포인트];port=[포트];database=[DB 이름];uid=[사용자 이름];pwd=[비밀 번호]";아래의 OnConfiguring 함수를 다음과 같이 수정하였습니다.(대소문자 주의)기존의 마이그레이션 폴더들을 정리해줬습니다. 기존에 마이그레이션 정보들이 남아있으면 충돌나면서 update-database 시 실패를 하는 것 같습니다. 항상 최초의 마이그레이션으로 실행을 하네요. 주소가 달라서 그런가?MySQL Workbench에서 확인해줍니다.
-
해결됨ARM Cortex-M 프로세서 프로그래밍
AAPCS 관련 질문 드립니다.
안녕하세요. 강사님.강의 잘 보고있습니다.실습 진행 중 궁금한게 있어서 질문 남깁니다.아래 그림은 result = max(b, a); 를 실행하기 전 레지스터입니다.아래 그림은 max 어셈블리 함수 내용입니다.bx lr가 실행되기 전까지 레지스터 상태를 보면 별 문제 없어보이는데요.문제는 저 라인이 실행한 후입니다.레지스터 셋을 보시면 갑자기 r3값이 변하는 것을 확인할 수 있습니다. AAPCS를 보면 result값은 r0 또는 r1인데 말이죠.제 함수에 문제가 있어보이지는 않는데 무엇이 문제인지 혹시 알 수 있을까요?
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
안녕하세요. 다른 풀이도 풀었는데 괜찮을까요?
정답은 제대로 나오긴 했는데 시간 초과라던가 하는 문제가 없을까요?4중 for문은 생각지도 못했네요..ㅠㅠ sudoku = [list(map(int, input().split())) for _ in range(9)] def solution(sudoku): length = len(sudoku) a, b, c, = list(), list(), list() # 행열 검사 for i in range(length): row, col = list(), list() for j in range(length): row.append(sudoku[i][j]) col.append(sudoku[j][i]) if len(set(row)) != 9 or len(set(col)) != 9: return "NO" # 3x3 격자판 검사 a.extend(row[0:3]) b.extend(row[3:6]) c.extend(row[6:]) if i == 2 or i == 5 or i == 8: if len(set(a)) != 9 or len(set(b)) != 9 or len(set(c)) != 9: return "NO" a, b, c, = list(), list(), list() return "YES" print(solution(sudoku))
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
조회시 count 쿼리에 대하여
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 제가 영한님 강의를 보고 혼자 간단한 프로젝트를 진행해보고 있는데, Order 조회시 OrderItem과 같은 List의 갯수를 알고 싶어 count 쿼리를 사용하려고 합니다.이때, 1. JPA에서 DTO 직접 조회가 아닌 fetch join 하여 엔티티로 조회한 이후에 count 값 (갯수)를 얻을 수 있을까요??그리고 2. 컬렉션 페치조인은 1개만 가능하다 하였는데, 예를 들어 Order에 OrderItem 과 List가 하나더 추가 되었을 때, 각 리스트의 count 갯수를 알고싶으면 DTO직접 조회에서 count 쿼리를 사용하는게 맞을까요?항상 강의 잘 듣고있습니다. 감사합니다