묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[자바/Java] 문과생도 이해하는 DFS 알고리즘! - 입문편
강사님 안녕하세요! 깊이 우선 탐색 2 (백준 24480)에서 제공하는 풀이 코드에서 궁금한 점이 있어서 질문 드립니다!
import java.util.*; import java.io.*; class Main { final static int MAX = 100000 + 10; static ArrayList<Integer>[] graph; static boolean[] visited; static int N, M, R; static int[] answer; static int order; public static void dfs(int idx){ visited[idx] = true; answer[idx] = order; order++; for(int i = 0; i < graph[idx].size(); i++){ int next = graph[idx].get(i); if(visited[next] == false) dfs(next); } } public static void main(String[] args) throws IOException{ // 0. 입력 및 초기화 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); StringTokenizer st = new StringTokenizer(br.readLine()); N = Integer.parseInt(st.nextToken()); M = Integer.parseInt(st.nextToken()); R = Integer.parseInt(st.nextToken()); // 1. graph에 연결 정보 채우기 graph = new ArrayList[MAX]; for(int i = 1; i <= N; i++) graph[i] = new ArrayList<>(); visited = new boolean[MAX]; answer = new int[MAX]; order = 1; for(int i = 0; i < M ;i++){ st = new StringTokenizer(br.readLine()); int x = Integer.parseInt(st.nextToken()); int y = Integer.parseInt(st.nextToken()); graph[x].add(y); graph[y].add(x); } // 2. 오름차순 정렬 for(int i = 1; i <= N; i++) Collections.sort(graph[i], Collections.reverseOrder()); // 3. dfs(재귀함수 호출) dfs(R); // 4. 출력 for(int i = 1; i <=N; i++){ bw.write(String.valueOf(answer[i])); bw.newLine(); } bw.close(); br.close(); } } 위 제공 답안 코드에서Collections.reverseOrder()위 처럼 revserOrder()를 걸어주신게 잘못 작성된 내용 같은데 혹시 제가 잘못 확인한걸까요?일단 해당 코드로 그대로 백준에 올리면 안되고 있는 상태입니다!그리고 answer나 visited에 MAX를 넣으시는 이유가 궁급합니다! 방문정보나 answer의 경우 N+1로도 초기화가 가능하지 않나요? 혹시 더 복잡한 문제등에서 풀이의 간결성을 위해 필요한 방법일까요?? --강의 너무 잘 보고 있습니다! 훌륭한 강의 찍어주셔서 감사합니다!
-
해결됨[리뉴얼] 맛집 지도앱 만들기 (React Native & NestJS)
nest.js와 typeORM 지식이 있어야할까요?
강의 후반부에 백엔드를 공부하기 위해선 react-query처럼 선수지식이 있어야될까요?
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
시간복잡도가O(N^2)이라고 생각 되서 시간이 초과될거같은데 오류가 안나서 궁금합니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.import java.util.Arrays; import java.util.Scanner; public class lecture27 { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); int n=scanner.nextInt(); int m=scanner.nextInt(); int []arr=new int[n]; for (int i = 0; i <n ; i++) { arr[i]=scanner.nextInt(); } int count=0; for (int i = 0; i <n ; i++) { int sum=arr[i]; for (int j = i+1; j <n ; j++) { sum=sum+arr[j]; if(sum==m) { count++; } else if(sum>=m) { break; } } } System.out.println(count); } }이 코드로 정답입니다는 받았는데 , 제 생각에는 O(n^2)이라 시간 초과가 나야할것 같은데 이중 for문이니까 시간 초과가 나지 않아서 어떤 부분에서 잘못 생각한건지 궁금합니다.
-
해결됨Flutter로 SNS 앱 만들기
유저 정보
강사님 강의 잘 듣고 있습니다..저번에 유저 정보를 가져오는 것을 질문드렸었는데.. 학교에서 이 강의와 유사한 프로젝트 하는 것이 있어서 적용 시켜보니 정보를 가져오지를 못합니다.. 한번 봐주실 수 있을까요?.. editProfile파일입니다..https://github.com/gimseongcheol/team_project/tree/master/lib/screen/mainPage
-
미해결SQL과 구글시트로 시작하는 데이터분석
설치가 제대로 안됩니다.
설치가 제대로 안되네요 어떻게해야될까요?
-
미해결홍정모의 따라하며 배우는 C++
pixel_color 에서 앞에 0x를 붙이는 이유
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 3.9 비트 플래그, 비트 마스크 사용법 강의 28:25에서 int pixel_color = 0xDAA520 에서 앞에 0x를 붙이는 이유 말씀 부탁드립니다!
-
해결됨스프링 핵심 원리 - 기본편
springBoot가 실행이 안됩니다!..
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.이렇게 뜨고 실행이 안됩니다.. 어떻게 해야 해결이 될까요?
-
미해결파이썬 동시성 프로그래밍 : 데이터 수집부터 웹 개발까지 (feat. FastAPI, async, await)
비동기 함수를 동기적인 실행으로 만드는 부분 질문입니다
안녕하세요. 강의 잘 보고 있습니다. 다름이 아니라 [섹션1 - 동기 vs 비동기] 강의 내용 중 "비동기 함수로 정의된 것들을 동기적인 실행으로 만드는 부분"을 설명해주셨는데요! 예를 들어, 수업 내용에서 언급된 아래와 같은 코드일 때입니다. import asyncio async def delivery(name, mealtime): print("start:", name) await asyncio.sleep(mealtime) print("end") async def main(): await delivery('A', 10) await delivery('B', 5) await delivery('C', 3)그러면 위 코드를 async def가 아닌 일반적인 동기 함수 def 로 정의해서 아래처럼 동기적으로 프로그래밍한 것이랑 성능적인 차이가 있나요? 비동기 함수로 정의하고 굳이 동기적인 프로그래밍을 작성하는 경우가 예시로 뭐가 있으려나요..? 단순히 생각했을 때 어차피 동기적인 프로그래밍으로 작성할 것이라면 애초에 동기함수로 작성하는 게 코드를 읽는 다른 사람들에게도 좀 더 헷갈리지 않게 하는 게 아닐까..싶은데 궁금합니다! import time def delivery(name, mealtime): print("start:", name) time.sleep(mealtime) print("end") async def main(): delivery('A', 10) delivery('B', 5) delivery('C', 3)
-
해결됨대용량 채팅 TPS 처리를 위한 웹소켓 통신 만들며 학습하기
뭔가 중간에 오타를 쳤는지 오류가 자꾸 발생하는데 혹시 go 소스코드 볼수있는곳 있나요?
뭔가 중간에 오타를 쳤는지 오류가 자꾸 발생하는데 혹시 go 소스코드 볼수있는곳 있나요?
-
미해결[초중급편] 안드로이드 데이팅 앱 만들기(Android Kotlin)
이미지 저장하기 강의에서 회원가입 후 이미지가 파이어 베이스에 저장되지 않습니다.
강의 제목 : 이미지 저장하기문의 내용 : 4분 43초에 회원가입 후 이미지파일이 파이어 베이스에 업로드 되는 영상처럼 강의 내용대로 코드를 구성하고 동일하게 진행 했으나 이미지가 업로드가 되지 않네요. 강의0:42에서 클라우드 스토리지 SDK 추가를 1:28에서 메모리 데이터에서 업로드도 영상과 동일하게 코드 불러오고 수정하고 따라해서 하면 코드에서는 오류가 발생하지 않는데 파이어 베이스로는 이미지가 업로드가 안 되네요
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
상품 수정 강의 질문있습니다.
@GetMapping("/{itemId}/edit") public String editForm(@PathVariable Long itemId, Model model) { Item item = itemRepository.findById(itemId); model.addAttribute("item", item); return "basic/editForm"; }GetMapping에 {itemId}가 있는데 이변수는 어디서 받아오는건가요?저는 item class에서 받아온다고 생각했는데 아래는 id로 소문자인데 itemId는 어디서 받아오는건가요?package hello.itemservice.domain.item;import lombok.Data;@Datapublic class Item { private Long id; private String itemName; private Integer price; private Integer quantity; public Item() { }
-
해결됨CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
HTTPS프로토콜에 대해서 질문이 있습니다
안녕하세요~강사님 다름이 아니고 그렇게 크게 중요한 내용은 아니지만..HTTPS프로토콜에 관련해서 두가지 궁금한 사항이 있어 질문 남깁니다.Q1) OSI7계층으로 따졌을 때 HTTP는 응용계층에 속한 프로토콜이고 TLS는 세션계층에 속한 프로토콜이잖아요.HTTPS프로토콜은 HTTP프로토콜과 TLS프로토콜이 합쳐진 형태인데 그럼 HTTPS프로토콜을 응용계층의 프로토콜로 한정지어 분류하는게 맞는건지 아니면 어느한 계층에 속하지 않고 응용계층과 세션계층을 아우르는 개념으로 이해하면 되는건지가 애매합니다.구글링 해봤을때 어디서는 응용계층에 한정지어 구분하기도 하고 어디서는 아예 HTTPS는 어느분류에도 표기하지 않은 경우도 있어서 헷갈리네요.. Q2) DEEP DIVE : HTTPS와 TLS #2. TLS 핸드셰이크 강의에서는 "HTTP/2는 HTTPS위에서만 돌아갑니다"라고 작성되어 있는데 그전 강의인 DEEP DIVE : HTTP/2와 HTTP/3의 차이 강의의 HTTP/2 계층 이미지를 보면 TLS는 Optional로 표기되어 있어서 둘의 차이가 무엇인지 궁금합니다.
-
해결됨김영한의 실전 자바 - 중급 1편
마지막 단에서 공통 처리할 때의 catch 부모 예외
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]5:50에서 공통 처리 catch를 최상위 예외인 Exception으로 잡았는데결국 해결할 수 없는 예외들은 언체크 예외들로 구성되어 있으니깐 RuntimeException으로 잡는게 낫지 않나요?다른 케이스가 있어서 그런건지 궁금해서 질문 남깁니다.
-
미해결[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
password is required 오류
docker-compose up 이후에 postgres 확장자를 이용하여 연결하려고 할 때 모든 과정 이후에 password is required 오류가 뜹니다 ㅠㅠ포트 변경 후에도 동일하고postgres-data 폴더 삭제 -> 생성 후에도 동일합니다ㅠㅠ
-
해결됨리눅스 커널의 구조와 원리: 디버깅 - Advanced 실전 [저자 직강 1부-3]
T32 맥북 사용
주신 Trace32 프로그램은 mac에서 사용은 못하나요?
-
해결됨[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
라이프사이클 별로 어떤 작업을 할당(?)해야하는지 궁금합니다.
안녕하세요,플러터 관련 라이프사이클 수업을 듣던 중 궁금 중이 생겨서 문의를 남깁니다. 플러터 Stateful Widget에서는 크게 7단계가 있는 것 같습니다.각각의 메소드들의 언제 호출되는지는 수업을 통해서 잘 이해했습니다.제가 궁금한 것은, 각각의 라이프사이클에서 어떤 작업을 하도록 해야(?)하는지가 궁금합니다. 예를들어 네트워크 요청은 어느 라이프사이클의 메소드를 통해 진행하는지, 이벤트 등록을 해지는 어느 라이프사이클 메소드에서 하는지가 궁금합니다. 또한 안드로이드 같은 경우에는 라이프사이클의 메소드 실행이 보장되는 경우가 있고, 안되는 경우도 있던데 플로터에도 비슷한 정책(?)가 있는지 궁금합니다. (좋은 수업 감사드립니다!)
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
상품 출력 질문입니다.
맨 윗 사진이 사진1, 두번째 사진이 사진2라고 가정시. package com.example.itemstore.itemservice.web.basic;import com.example.itemstore.itemservice.domain.item.Item;import com.example.itemstore.itemservice.domain.item.ItemRepository;import jakarta.annotation.PostConstruct;import lombok.RequiredArgsConstructor;import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.*;import org.springframework.web.servlet.mvc.support.RedirectAttributes;import java.util.List;@Controller@RequestMapping("/basic/items")@RequiredArgsConstructorpublic class BasicItemController {private final ItemRepository itemRepository;@GetMappingpublic String items(Model model){List<Item> item=itemRepository.findAll();model.addAttribute("item",item);return "basic/items";}@GetMapping("/{itemId}")public String item(@PathVariable long itemId, Model model){Item item = itemRepository.findById(itemId);model.addAttribute("item",item);return "basic/items";}@GetMapping("/add")public String addForm() {return "basic/addForm";}/**테스트용 데이터 추가/@PostConstructpublic void init(){itemRepository.save(new Item("a",10,1));}}질문 : 위 코드는 사진 2처럼 나오고 아래코드는 사진1처럼 정상출력되는데 이유가 뭔가요? 변수명items과 model.addAttribute에 이름을 같게 넣어서 아래 위 코드 둘다 같은 결과가 나와야 한다고 생각하는데 막상 실행하면 결과가 다르게 나와서요.public class BasicItemController {private final ItemRepository itemRepository;@GetMappingpublic String items(Model model){List<Item> items=itemRepository.findAll();model.addAttribute("items",items);return "basic/items";}전체코드: https://drive.google.com/file/d/1wGf0aRjKQ-haXmTupwJy9KUVwoY8gIbY/view?usp=drive_link질문: 아래 링크 추가질문 올려놨는데 답변 부탁드립니다.https://www.inflearn.com/questions/1251246/%EC%83%81%ED%92%88-%EB%93%B1%EB%A1%9D-%EC%B2%98%EB%A6%AC-modelattribute-%EC%A7%88%EB%AC%B8%EC%9E%85%EB%8B%88%EB%8B%A4
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-R 질문 있습니다
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.https://www.acmicpc.net/board/view/141897
-
해결됨김영한의 실전 자바 - 중급 1편
섹션6. 문제와 풀이
1번째 질문 : 아래쪽 while 부분에 "%2d "가 어떻게 간격을 맞출 수 있는 건가요?%는 연산자에서 나머지를 뜻하는데 뭔가 다른 기능이라도 있는 건가요?2번째 질문 : int offsetWeekDays = first.getDayOfWeek().getValue() % 7; 는 날짜의 요일을 맞추기 위해서 만든 거 같은데 왜 굳이 끝에 '% 7'을 표시해서 나머지로 구하는 건가요?'% 7'을 뺀다음에 first의 날짜를 2024. 1. 10 일로 바꿔도 정상작동하는데 뭔가 이유가 있는 건가요?나머지로 값을 구하는 이유가 있을까요?전체 코드 첨부하겠습니다!public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("년도를 입력하세요 : "); int year = scanner.nextInt(); System.out.print("월을 입력하세요 : "); int month = scanner.nextInt(); printCalendar(year, month); } private static void printCalendar(int year, int month) { LocalDate first = LocalDate.of(year, month, 1); LocalDate firstNext = first.plusMonths(1); // 월요일 (1%7) = 1, 화요일 (2%7) = 2, ... 일요일(7%7) = 0 int offsetWeekDays = first.getDayOfWeek().getValue() % 7; System.out.println("Su Mo Tu We Th Fr Sa"); for (int i = 0; i < offsetWeekDays; i++) { System.out.print(" "); } LocalDate dayIterator = first; while (dayIterator.isBefore(firstNext)) { System.out.printf("%2d ", dayIterator.getDayOfMonth()); if (dayIterator.getDayOfWeek() == DayOfWeek.SATURDAY) { System.out.println(); } dayIterator = dayIterator.plusDays(1); } }
-
해결됨C개발자를 위한 최소한의 C++
네가지 형변환 강의 질문
제가 c++ 강의를 보면서 무언가 빼먹은거 같아서 질문을 드려봅니다...강의 설명 중 3분즈음에 등장하는 const_cast를 설명하실 때 궁금한 내용입니다.const MyData& rdata = a; 일때rdata의 멤버접근을 할 수 있는거는 const 키워드가 붙은것만 가능하다고 하셨는데그 자세한 이유가 궁금합니다 <상수형 참조가 상수형 메서드만 호출>