- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 보시면 dfs 끝나고 if len(visited) == len(rooms): return True 이렇게 되어있는데 2번째 구문에서 visited = [False] * len(rooms)를 했기때문에 if len(visited) == len(rooms): 구문은 무조건 참이 나올 수 밖에 없는 거 아닌가요? 문제를 이해 하다 보니 막혀서 질문 드립니다.
위강의에 MemberDto에 만약 address필드까지 추가해야한다면 MemberDto 리스트를 만들때 List<MemberDto> collect = findMembers.stream() .map(m -> new MemberDto(m.getName(),m.getAddress())) .collect(Collectors.toList()); 위와 같이 해준다면 MemberDto에서의 address와 findMembers에서의 address가 같은 주소값을 참조하고 있어 상황에 따라 뜻하지 않는 에러가 발생할 수 있다고 생각하는데 MemberDto에서 address 객체를 아예 새로 만드는 것이 더 좋을까요?? 현업에서는 어떻게 사용하는지 궁금합니다!
틀린 코드 https://www.acmicpc.net/source/58095478 문제는 이해를 했고 제가 짠 코드가 시간초과가 걸려야한다는 점도 이해했습니다. 처음 접근시 이분탐색 + check로 문제를 해결하려고 했는데요. 코드에서 naive하게 while문을 이용해서 몬스터의 체력을 공격력을 으로 빼주는 방법을 사용했고 용사가 먼저 때리고, 그다음 맞는 것도 구현했습니다. 이런 접근이 기존 시간 복잡도를 logN * N * (100000) 까지 증가할 수 있다는 점은 이해를 했는데, 왜 백준에서는 시간초과가 아닌 틀렸다고 나오는지 이해가 안되서 질문드립니다. 로직자체는 맞다고 생각이 드는데 시간초과도 틀리다고 뜰 수 있는걸까요? bool check(long long mid) { long long atk = hatk; long long hhp = mid; for (int i = 0; i < n; ++i) { if (v[i].t == 1) { mhp = v[i].h; matk = v[i].a; /* 왜 백준에서는 시간초과가 아니라 틀렸다고 나올까요? */ while (mhp > 0) { mhp -= atk; if (mhp <= 0) break; hhp -= matk; if (hhp <= 0) return false; } /* answer */ // long long div = mhp / atk + (mhp % atk ? 1 : 0); // long long cnt = div - 1; // hhp -= cnt * matk; } else { heal = v[i].h; addatk = v[i].a; atk += addatk; hhp = min(mid, hhp + heal); } /* answer */ // if (hhp <= 0) return false; } return true; }
안녕하세요 강사님 좋은 강의에 감사드립니다. 다름이 아니라 경사하강법을 공부 중 의문점이 들어 질문글을 작성하게 되었습니다. 에포크를 반복하며 과소-적정-과대 적합으로 성능이 진행되는 것으로 배웠는데요, 211p의 예시에서는 에포크마다 데이터가 새로 추가되지는 않은 것으로 이해를 했습니다. 그럼 같은 데이터를 반복해서 학습을 시키는 건데, 그게 성능 개선에 어떻게 영향을 미치고 효과를 발휘하게 되는 것인지 궁금합니다. 같은 데이터를 반복한다면 성능 개선이 없어야 하는 것으로 이해가 되어서요
강사님. 강의 잘 보고 있습니다. 감사합니다. 질문이 있는데요. Hardfault 같은 경우 다양한 원인으로 익셉션이 발생할 수 있는 것으로 알고있습니다. 그만큼 디버깅이 어려운데 설명을 들어보니까 SCB:SHCSR에서 USGFAULTENA, BUSFAULTENA, MEMFAULTENA를 enable하지 않으면 위와 같은 문제가 발생할 경우 전부 Hardfault 익셉션으로 처리가 되는 것 같은데요. 만약 USGFAULTENA, BUSFAULTENA, MEMFAULTENA를 전부 1로 설정하고 각각 익셉션을 정의하면 적어도 어떤 문제로 fault가 발생했는지 더 알기 쉬울 것 같은데 왜 이 값을 default로 설정한 것인지 또 실무에서 자주 사용이 되는지 궁금합니다. 정리하자면 USGFAULTENA, BUSFAULTENA, MEMFAULTENA를 1로 설정하지 않은(default) 상태에서 Hardfault 가 발생한다면 원인 찾기가 어려울 것 같지만, USGFAULTENA, BUSFAULTENA, MEMFAULTENA를 1로 설정하면 디버깅에 좀 더 도움이 되지 않는가? 그런데 왜 default로 설정되어 있는지 실무에서는 많이 사용 안하는지가 되겠네요.
안녕하십니까 강의 즐겁게 보고 있습니다. Containerless 강의 6분 30초 부분에서 다음과 같이 설명 해주셨습니다. "여러개의 Bean을 가지고 있는 스프링 컨테이너가 서블릿 컨테이너 뒤쪽에서 서블릿을 통해서 웹으로 들어온 요청을 받아가지고 스프링 컨테이너한테 다시 넘겨준다." 해당 부분 설명이 조금 헷갈리는데 그냥 단순하게 서블릿 컨테이너를 통해 들어온 요청을, 서블릿 컨테이너 뒤에서 동작하고 있는 스프링 컨테이너에 넘겨준다. 정도로 생각하면 될까요? "스프링 컨테이너한테 다시 넘겨준다" 는 부분이 좀 헷갈리는데 제가 이해한것이 맞는지 궁금하여 질문 남깁니다. 감사합니다.
java: constructor Item in class hello.itemservice.domain.item.Item cannot be applied to given types; required: java.lang.String,java.lang.Integer,java.lang.Integer found: no arguments reason: actual and formal argument lists differ in length 오류 내용으로 인자값을 찾을수 없다고 나오는데 @PostMapping("/add") public String addItemV1(@RequestParam String itemName, @RequestParam int price, @RequestParam Integer quantity, Model model) { Item item = new Item(itemName, price, quantity); // item.setItemName(itemName); // item.setPrice(price); // item.setQuantity(quantity); itemRepository.save(item); model.addAttribute("item", item); return "basic/item"; 이런 식으로 직접 적어주면 실행은 가능한데 set으로넣어줄땐 오류가 나네요 @PostMapping("/add") public String addItemV1(@RequestParam String itemName, @RequestParam int price, @RequestParam Integer quantity, Model model) { Item item = new Item(); <-여기서 오류가 납니다 item.setItemName(itemName); item.setPrice(price); item.setQuantity(quantity); 객체생성할때 맨 위 에러코드가 나면서 인자값을 찾을수가 없다고 뜨는데 제가 뭘 놓친게있을까요? 현재 addItemV1 set을 이용한 메서드만 오류가 납니다 addItemV2 addItemV3,4 정상 작동됩니다
안녕하세요 큰돌님 5-B번 문제를 제출하면 세그먼트 오류가 발생하는데 원인을 찾지 못하겠습니다... 강사님 코드와 크게 다른거같지 않은데 어디서 에러가 발생하는 걸까요? 항상 친절한 답변 감사드립니다:) http://boj.kr/fe751c8b73634cdf80e4de8ab6fefcce
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
레스토랑 상세 API (/restaurant/{id}) 호출 시 아래와 같이 헤더값을 넣어 줬을 때 @Headers({ 'accessToken': 'true', }) Interceptor 의 onRequest 메서드에서 options.headers 가 빈값으로 넘어와 if (options.headers['accessToken'] == 'true') 조건을 타지 않습니다. @Headers 가 선언된 restaurant_repository.dart 에는 아래처럼 처리가 되어있고요. import 'package:dio/dio.dart' hide Headers; import 'package:retrofit/retrofit.dart'; 아래 링크를 찾아서 https://github.com/Mindinventory/flutter-retrofit/issues/6 아래처럼 수정을 하면 정상적으로 동작 하는데 @Headers({ 'accessToken': 'true', }) Future<RestaurantDetailModel> getRestaurantDetail({ @Header('accessToken') required String accessToken, @Path() required String id, }); 동영상에서는 되고 제가 같은 방식으로 할 땐 안돼서 혹시 이렇게 처리하는게 맞는지, 아니면 어떤 부분이 잘못돼서 @Headers 로 값을 줬을 때 빈값으로 넘어오는지 궁금합니다.
!= 이거는 다르다고 배웠는데 저 문제에서 "hi" != "hi" 이게 왜 true가 되는건가요? 저는 false로 풀리는데.. 하이 와 하이는 다르다로 보이는데 똑같은 단어 아닌가요? or 문제다보니 true인건 알지만.. 풀이과정에서 이해가 안되서 질문드립니다. 다만 이해하기 어려운 질문은 답변 드리기 어려우니, 코드와 오류 메시지를 같이 첨부해 주시기 바랍니다.