묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
for(char a:str) cnt[a]++가 어떻게 알파뱃의 개수를 출력하는건가요?
안녕하세요. cnt[a]가 어떻게 알파벳의 개수를 출력하는지 이해가 되지 않습니다. 근본적으로 이해가 되지 않아 좌표이동 개념은 제외하고 질문드립니다! for(char a:str) cnt[a]++; 에서be가 입력되면 b,e가 각각 a로 들어와서 cnt[b]=98cnt[e]=101위와 같이 받는 것까지는 알겠는데 cnt[a]++면, 1개씩 증가한다는 연산자인데.. 그럼 99,102가 되는 거 아닌가요..?어떻게 알파벳의 개수를 출력하는건지 모르겠습니다 감사합니다!
-
미해결[도서 포함] 현직 11년차 대기업 UX 디자이너가 알려주는 UX 취업 가이드
도서 발송 관련 문의
강의는 겨우 1시간이라 너무 짧고, 강사님의 책을 통해 자세히 배우고 싶은데 언제쯤 책을 받을수 있나요? 선착순 100명만 받는건지, 제가 100명에 포함이 되었는지 자세한 답변을 부탁 드립니다.
-
해결됨[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
섹션 5 - 북마크 탭 만들기부분에 랜더링이 안됩니다
2024-03-23 10:28:11.256 21448-21448 ViewRootIm...nActivity] com.dk.mylivealonelife I ViewPostIme pointer 02024-03-23 10:28:11.275 21448-21448 ViewRootIm...nActivity] com.dk.mylivealonelife I onDisplayChanged oldDisplayState=2 newDisplayState=22024-03-23 10:28:11.388 21448-21448 ViewRootIm...nActivity] com.dk.mylivealonelife I ViewPostIme pointer 12024-03-23 10:28:11.403 21448-21448 WindowOnBackDispatcher com.dk.mylivealonelife W OnBackInvokedCallback is not enabled for the application. Set 'android:enableOnBackInvokedCallback="true"' in the application manifest.2024-03-23 10:28:11.456 21448-21448 BLASTBufferQueue_Java com.dk.mylivealonelife I update, w= 1080 h= 2340 mName = ViewRootImpl@6687397[MainActivity] mNativeObject= 0xb400007915241710 sc.mNativeObject= 0xb4000077b5238810 format= -1 caller= android.view.ViewRootImpl.updateBlastSurfaceIfNeeded:2968 android.view.ViewRootImpl.relayoutWindow:9998 android.view.ViewRootImpl.performTraversals:4056 android.view.ViewRootImpl.doTraversal:3239 android.view.ViewRootImpl$TraversalRunnable.run:11197 android.view.Choreographer$CallbackRecord.run:1650 2024-03-23 10:28:11.456 21448-21448 ViewRootIm...nActivity] com.dk.mylivealonelife I Relayout returned: old=(0,0,1080,2340) new=(0,0,1080,2340) req=(1080,2340)0 dur=1 res=0x0 s={true 0xb400007865290520} ch=false seqId=02024-03-23 10:28:11.460 21448-21509 ViewRootIm...nActivity] com.dk.mylivealonelife I mWNT: t=0xb4000077d52539d0 mBlastBufferQueue=0xb400007915241710 fn= 2 caller= android.view.ViewRootImpl$6.onFrameDraw:5539 android.view.ViewRootImpl$2.onFrameDraw:2103 android.view.ThreadedRenderer$1.onFrameDraw:788 2024-03-23 10:28:11.461 21448-21448 ViewRootIm...nActivity] com.dk.mylivealonelife I registerCallbackForPendingTransactions2024-03-23 10:28:11.511 21448-21778 TrafficStats com.dk.mylivealonelife D tagSocket(108) with statsTag=0xffffffff, statsUid=-12024-03-23 10:28:12.351 21448-21448 BookmarkFragment com.dk.mylivealonelife E DataSnapshot { key = -NtZSdcbSItwNWK2vCbE, value = {bookmarkIsTure=true} }2024-03-23 10:28:12.352 21448-21448 BookmarkFragment com.dk.mylivealonelife E DataSnapshot { key = -NtZSdcg99SS483hV45y, value = {bookmarkIsTure=true} }2024-03-23 10:28:12.352 21448-21448 BookmarkFragment com.dk.mylivealonelife E DataSnapshot { key = -NtZV1bPRolzlfUx3tLj, value = {bookmarkIsTure=true} }2024-03-23 10:28:12.352 21448-21448 BookmarkFragment com.dk.mylivealonelife E DataSnapshot { key = -NtZV1bS1QRxpkI6E6GN, value = {bookmarkIsTure=true} } 이건 로그파일이구요 로그는 찍히는데 화면에 랜더링이 안되네요 이것저것 열심히 찾아봐도 안되서 파일도 같이 첨부합니다.https://drive.google.com/file/d/1VUq5si9BXmxutF1Q1C7E9CzHVVN5sP79/view?usp=sharing
-
해결됨실무에 바로 적용하는 프런트엔드 테스트 - 1부. 테스트 기초: 단위・통합 테스트
show more 버튼이 노출되지 않는 테스트 케이스에서 limit 오동작 문제
안녕하세요, 좋은 강의 잘 듣고 있습니다.보여줄 상품 리스트가 없는 경우 show more 버튼이 노출되지 않는다. 테스트 케이스에서 limit 를 20 이하로 입력해도 테스트 실패로 잡히지 않는 문제가 있는 것 같아 보이는데요..!원인을 찾아보려 조금 테스트하다 보니.. render -> screen.findAllByTestId 를 하면서 api가 두 번 호출되는 것 같습니다. 그 과정에서 offset이 limit 만큼 증가해 호출되고 있어요. (즉, 두번째 페이지까지 렌더링했을 때를 기준으로 테스트가 돌아가는 것 같습니다)it('보여줄 상품 리스트가 없는 경우 show more 버튼이 노출되지 않는다.', async () => { await render(<ProductList limit={2} />); // offset : 0 await screen.findAllByTestId('product-card'); // offset : 2 });offset 이 useInfiniteQuery에서 리턴해주는 pageParams로 인해 만들어지는 것 같아서 pageParams가 원인인 것 같긴 한데.. 해결방법을 모르겠네요.혹시 이 부분 수정이 어떻게 되면 좋을지 확인 부탁드립니다..! +)테스트하다가 발견한 건데요, apiRoutes.products 를 mocking하는 handler에서 lastPage로 리턴하는 조건이 잘못된 건 아닌가 해서요..!ctx.json({ products, lastPage: products.length < limit });이면 테스트 코드에서 limit을 10으로 준다고 해도, 두 번째 페이지에서 lastPage가 false인 것 같습니다.ctx.json({ products, lastPage: data.products.length <= offset + limit });으로 수정되어야 하지 않을까 조심스럽게 제안드려 봅니다..!
-
해결됨김영한의 실전 자바 - 기본편
부모는 자식을 담을 수 있지만 자식은 부모를 담을 수 없는 이유
[질문 내용]다형적 참조 시 부모 클래스는 자식 클래스를 참조하여 대입할 수 있으나, 자식 클래스는 부모 클래스를 참조하여 대입할 수 없는 부분에 대해 좀 더 작동 원리를 이해하고 싶어서 질문드립니다. 예시)Parent a= new Child(); -> 실행 가능Child b = new Parent(); -> 실행 불가. 컴파일 에러 발생. 위와 같이 규칙이 정해진 이유는하위 클래스는 인스턴스 생성 시 상위 클래스 생성자를 무조건 호출하여 인스턴스 내에 상위 클래스, 하위 클래스 정보가 모두 존재하는 반면, 상위 클래스는 인스턴스 생성 시 본인의 인스턴스만 생성하기 때문에 인스턴스 내부에 상위 클래스 정보밖에 존재하지 않아 하위 클래스 데이터 타입에 해당 인스턴스 참조값을 대입할 수 없는거라고 이해하면 될까요? 상기 작동 방식이 결국엔 다운캐스팅을 명시해야하는 이유와 일맥상통하는 것 같은데 제가 정확하게 이해한건지 모르겠습니다.
-
미해결태블로 레벨UP
계산식 누락 문의드립니다.
후반부 강의에 있는 'Profit Ratio'와 '레코드 수'를 어떤 식으로 계산하셨는지 궁금합니다.제 나름대로 계산을 했는데 강의와 상이한 값이 나와서요...
-
미해결김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
ScannerWhileEx4
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]For 무한 루프 속에 switch 조건문을 넣으려고 하는데요Switch의 break로는 for 무한루프를 못 나와서요나오는 방법이 있을까요?
-
해결됨
강의 진도율 저만 이상하다고 생각하나요?
진도률을 보면 진행한 강의 수/총 강의수로 되어 있고 그 옆에 진행한 시간/총 강의 시간 이렇게 되어 있는데.수업자료를 다운로드 받는 강의도 강의1개로 진행하는것으로 보니 사용자의 진행률은 20%이지만 시간으로 보면 진행된 것은 10%밖에 진행한 것을 확인할 수 있었습니다. 이거 진도율을 시간으로 해야 더 정확한것 아닐까요? 라는 생각이 드네요. 우리가 책을 읽을때 쪽수로 어느정도 읽었다를 가늠하지, x챕터까지 읽었으니 y% 읽었구나를 생각하지 않는것 처럼요
-
해결됨PM을 위한 데이터 리터러시(프로덕트 데이터 분석)
추천을 통한 주문 전환율
#5. 결제 전환율 개선 프로젝트 강의에서메인지표를 추천 클릭율과 추천을 통한 주문 전환율(CVR)로 설정해주셨는데, 여기서 추천을 통한 주문 전환율을 이렇게 계산하는 걸까요?-> 결제 완료자 수 / 최소 주문 금액을 넘지 않은 상태로 카트페이지에 진입 후,추천 버튼 사용자 수
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
hello페이지에러
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]페이지 에러가 뜹니다 에러내용은 이렇습니다타임리프쪽이 에러이고 다른파일에서는런이안돼는데 HelloSpringAplication파일에서만 런이되는데 원래 이런건가요?
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
별찍기 질문드려요
강의영상 8:40분쯤에 i + 1로 변경해서 쭉 출력이되었는데이 부분이 이해가 잘 안됩니다 그 이유가 처음 초기값이j = 0이고 i = 0인데 j변수 for문에서 j < i + 1을하면0 < 0 + 1 즉 0 < 1이 되어서 한번실행되고 j++를 해주고 다시 처음 for문으로 와서 i++가 되어있는데 그럼 다시j변수 for문에서 1 < 1 + 1이 될텐데 그럼 1 < 2인데 별 찍는 코드가 그럼 한번만 실행되는거 아닌가요? 2보다 작은 동안이니까 한번 실행되는거 같은데 왜 아닌지 궁금합니다
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
8.6 투두 수정하기) 오류 관련 질문
안녕하세요 선생님 강의 보면서 똑같이 코드를 입력했는데그 이후에 새로고침 하고 체크박스를 누르니까 이런 오류가 발생하네요혹시 무슨 오류인지 알 수 있을까요?
-
미해결김영한의 실전 자바 - 기본편
스택영역과 힙영역 질문입니다.
[질문 내용]여기에 질문 내용을 남겨주세요. 제가 이해력이 안좋아서 자꾸 질문을 남기게되네요 ㅠ method1()의 스택프레임이 제거되고 지역변수 data1도 함께 제거되었다. 여기는 이해가 갑니다. Data data1 = new Data(10);으로 만들어 져서 data1은 참조값 x001을 갖고 있고 Data의 인스턴스라는 것과 메서드 내에서 사용했기 때문에 data1은 지역변수라 칭한것도 이해가 됩니다. 하지만정리 부분에 // 지역 변수는 스택 영역에, 객체(인스턴스)는 힙 영역에 관리되는 것을 확인 했다.// 이 부분에서 지역 변수라 하면 data1이고 또 객체라 하면 Data인스턴스에 data1의 참조값을 지칭하는 말 일텐데 제가 제대로 이해하지 못한 부분이 있나 싶습니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
6-F 그리디 질문입니다.
http://boj.kr/946c8f57d8884275ae800627eb01ada3 안녕하세요 강사님.일단은 이 문제를 보고 이분탐색 방법이 딱히 떠오르지가 않아서그냥 마음가는대로(?) 풀었습니다. 그런데, 게시판의 반례는 다 맞는 것 같은데제출하면 바로 틀렸다고 떠서그냥 잘못 풀었나 보다 하고 강사님 강의를 찾아보니 이진탐색과 그리디 방법 두 가지가 있더라구요!혹시나 해서 그리디 부분을 보니 제가 그래도 근접은 했구나 생각이 들었는데, 아무리 생각해도 어디가 틀렸는지 정확히 모르겠어가지고 잠이 안옵니다 ㅠㅠ 강사님께서는 HP를 마지막에 +1 하셨는데,저는 그냥 처음부터 생존하기 위해 필요한 HP 1을 안고 쭉쭉 계산하는 식으로 생각했습니다. 아무래도 이 부분이 틀린것 같다고 생각은 드는데 정확히 왜 틀린건지를 모르겠습니다 ㅠㅠ 한번만 도와주세요 흑흑..
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
getHandler() 에서의 로직과 그 이후
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예[질문 내용]안녕하세요. doDispatcher에서의 getHandler() 코드를 보다가 제가 나름대로 정리해본 것이 맞는 지 질문드립니다.한 url 에서 요청이 오면, 핸들러 맵핑 조회에서 1순위가 RequestMappingHandlerMapping 이므로, 먼저 getHandler()의 while 문 내부 HandlerMapping mapping 에 RequestMappingHandlerMapping이 대입된다.// 스프링 getHandler() 코드 일부 발췌 if (this.handlerMappings != null) { Iterator var2 = this.handlerMappings.iterator(); while(var2.hasNext()) { HandlerMapping mapping = (HandlerMapping)var2.next(); HandlerExecutionChain handler = mapping.getHandler(request); if (handler != null) { return handler; } } } 다음 줄의 mapping.getHandler(request)를 통해 @Controller가 붙은 클래스 중, 요청 url와 맞는 @RequestMapping(”url”)이 붙여진 메소드를 보유한 클래스를 핸들러로 가져온다.디스패처서블릿이 이 핸들러와 맞는 어댑터(RequestMappingHandlerAdapter)를 찾아오고,어댑터.handle() 을 통해 @RequestMapping(”url”)이 붙여진 메소드가 실행된다. 제가 생각한것이 맞는 지 궁금하여 질문드립니다.감사합니다.
-
미해결자바 동시성 프로그래밍 [리액티브 프로그래밍 Part.1]
사용자 모드 커널 모드 CPU 반환 시점이 궁금합니다.
궁금한 점강의 내용에서 I/O작업이 필요할 경우 System Call 요청 -> Mode Bit 0 변경 -> I/O 리소스 할당의 과정으로 시스템이 호출된다고 되어있는데 CPU를 할당 받을 때도 커널모드가 필요한지 궁금합니다. 이유강의 자료를 확인해보면 다른 리소스들과 같이 CPU가 존재
-
미해결
상속과 접급제한 질문
패키지 위치에 따라서1case자식 & 메인 / 부모2case자식 / 메인 & 부모3case자식 / 메인 / 부모Child c = new Child();Parent p = new Parent(); 일떄c.publicmethod(); ,p.publicmethod(); 는되고c.privatemethod(); p.privatemethod(); 는 안되는거 자명함근데 defaultmethod()와protectedmethod() 일 경우 헷갈림1case 의 경우c.defaultmethod(); 와 c.protectedmethod(); 실행안됨# 예상 메인에서 부모의 디폴트메소드 접근 X 이라서 그런가요 ?2case 의 경우c.protectedmethod(); 실행되는데 c.defaultmethod() 실행안됨 근데 p.defaultmethod();는 됨2-1c.defaultmethod() 실행안됨 이거는메인클래스있는 패키지와 c 가 다른 패키지여서 그런듯 ?근데 그렇다기엔 c.protectedmethod()은 왜 불러짐 ? 같은 패키지 위치도아닌데 상속받아서 그런가 ?상속받아서 되는거면 case 1이건 3이건 다 성립되야하는거아닌가요 ? 2-3 p.defaultmethod(); 됨 메인 클래스와 p 가 같은 패키지3번의경우c.defaultmethod() 실행안됨 , p.defaultmethod();도 안됨메인메소드를 위치기준으로 확인해야하는지 클래스가 소속된 패키지 위치로 확인해야하는지 아니면 둘다 복합적으로 연결이 되어있는지 접근제어자 헷갈립니다 명확하게 설명좀부탁합니다
-
해결됨배달앱 클론코딩 [with React Native]
네비게이터 질문
네비게이터 여러 종류를 같이 쓸 수 있다고 했는데 여기 강좌에선 조건문으로 나눠서 화면 상으론 따로 나오게 썼잖아요, 조건문 없이 그냥 탭 네비게이션과 스택 네비게이션을 형제 요소로 넣어 한 화면에 다 집어넣을 수도 있는 것인가요?
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
진행과정중 로그 표시
김영한 선생님과는 다르게 너무 로그가 간단하게 나오고 좌측에 Test Results도 열어봐도 아무것도 없다고 나옵니다 왜그럴까요? ㅠㅠ
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
username=kim&username=hello의 경우 잘못 설계한거 아닌가요?
처음에는 username=kim&username=hello와 같이 쿼리 파라미터를 사용한다면 잘못 설계한것이 아닌가 생각을 했는데오히려 스프링 자체에서 getParameterValues로 중복된 쿼리 파라미터의 키를 허용한다면 의도적으로 사용할 수도 있는건지, 그렇다면 왜 저렇게 사용하는지 궁금합니다.