묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
5-B erase(), substr() 시간복잡도 질문드립니다.
안녕하세요 선생님.선생님께서 푸신 코드가 시간복잡도가 통과되지 않을 것이라 생각하였는데 통과하여 질문드립니다.제가 알기로는 substr(), erase() 함수 모두 자르고 당기는 작업이 들어가서 O(n)의 시간복잡도가 걸린다고 알고 있는데, 반례로 문자열이 100만이 모두 같은 알파벳으로 aaa...라고 하고 폭발 문자열이 a라고 한다면 반복문을 100만번 돌면서 매번 substr()과 erase()를 해주게 되어 100만 * (O(n) + O(n)) 이 되어 시간복잡도가 넘어가는 것 아닌가요? 이 경우에 substr()과 erase()가 둘다 한개의 문자(a)만 체크하기 때문에 상수시간으로 취급하여 최대 200만이 되어 문제가 안 생기는 것 같기는 한데 뭔가 시간복잡도를 빡세게 잡는 문제가 나온다면 이러한 접근으로 erase()와 substr()을 사용한다면 시간초과가 날 수도 있지 않을까 하는 고민이 생겨서 질문드립니다! substr()과 erase()를 사용해도 시간복잡도 고려에 문제가 없을까요? 이 코드는 제가 find()와 erase()를 사용하여 푼 경우입니다. 이 경우에도 반복문을 돌리고 매번 find()와 erase()를 쓰는데, find()도 동일하게 O(n)이 걸리니까 로직이 선생님께서 푼 것과 동일하다고 판단하였는데, 아래 로직은 시간초과가 떴습니다.#include<bits/stdc++.h> using namespace std; string s, a; int main(){ cin >> s >> a; while(true){ if(!s.size()){cout << "FRULA" << '\n'; return 0;} int flag = s.find(a); if(flag != string::npos){ s.erase(flag, a.size()); } else break; } cout << s << '\n'; }
-
해결됨독하게 시작하는 C 프로그래밍
디바이스 파일에 대해서 여쭤보고 싶습니다.
안녕하세요. 강사님.입출력과 관련된 부분은 운영체제가 처리를 해주는 것으로 알고있습니다. 일반적으로 입출력을 수행할 때 OS가 제공해주는 API를 사용해서 입출력을 수행할텐데 그 행위 자체가 내부적으로 디바이스 파일을 사용하도록 구현이 되는 구조인걸까요 ?디바이스 파일을 제공해주는 것은 알겠는데 그걸 직접적으로 활용하는 코드는 다뤄본적이 없어서요...
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
props 사용 시 중괄호 질문
props를 사용해 전달 받을 때 어떤 상황에서 중괄호를 사용하고 특히 함수를 전달 받을 때 왜 중괄호가 필요한지 궁금합니다.const DiaryEditor = ({onCreate}) => {return} const DiaryList = ({diaryList}) => {return} const DiaryItem = ({author, content, create_date, emotion, id}) => {return}
-
미해결[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
디바이스연결시 이미지 안뜸
가상디바이스에 연결했을때는 콘텐츠 리스트에 있는 콘텐츠들의 사진이 뜨는데 디바이스를 직접 연결했을때는 이미지가 나오지 않습니다. url 문제인가요? 혹시 url 문제라면 파이어베이스의 이미지 부분에 어떤것을 넣어야하나요?
-
미해결비트코인 알고리즘 트레이딩 봇 개발
베이지안에서 질문있습니다.
pbounds = { 'revenue_rate' : (0.005,0.015), 'max_loss_rate' : (0.05,0.3), 'increase_rate' : (0.1,0.4), 'buy_cnt_limit' : (5,20), 'buy_amt_unit' : (10,20) } 여기서 buy_cnt_limit은 사실 정수가 나와야 하는데. 베이지안 최적화 후에 반올림하여 수정하는 방법밖에 없을까요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
REST API로 통신
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]단계별 메시지 처리는 타임리프에서만 매칭이 되나요? REST API에서는 단계별 메시지 매칭이 되지 않는지 궁금합니다.
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
엥커박스 크기 및 중복 생성 방지에 관한 질문
좋은 강의 찍어주셔서 감사합니다. 해당 강의를 토대로 공부를 하며 모델을 제작 중에 학습 후 inference_detector을 돌리고 나면 같은 물체를 여러번 잡는 문제가 발생합니다. 또한 이용중인 이미지의 크기가 작아서 인지 엥커박스의 크기가 전체 화면을 잡아주는 경우가 발생하고 있습니다. 그래서 이를 방지하고자 rpn_head의 anchor_generator를 수정해보았으나 학습이 안되는 모습을 관찰하였습니다. 사용 모델 :faster_rcnn_r50_caffe_fpn_mstrain_3x_coco.py 이때 사용 이미지의 class는 1개였습니다. 어떤 식으로 이것을 수정할 수 있을까요? 또한 어디 부분의 강의를 들었을 때 이와 관련된 내용을 알 수 있을까요?감사합니다.
-
미해결[라이브 멘토링] 유니티 뱀파이어 서바이벌 장르 모작
GetComponent 할때 AddComponent 질문입니다!
항상 예외나 문제가될 사항에 준비하라고 말씀해주셧는데GetComponent 를 해서 어떤 컴포넌트를 가져올때if (GetComponent == null ){ AddComponent<>();} 이런식으로 만약 추가가안되있다면 추가해주는 방식을 추가해주는거는 어떤가요? 너무 사용이 많아져서 오버된 행동일까요??
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
씨름 O(n)으로 풀었는데 런타임 에러가 떠요
package GreedyAlgorithm;import java.util.*;public class SsireumSelection {static Scanner sc = new Scanner(System.in); static ArrayList<Body> athlete = new ArrayList<>(); static int n = sc.nextInt(); static int answer; static int maxWeight=Integer.MIN_VALUE; public static void main(String[] args) {for (int i = 0; i < n; i++) {athlete.add(new Body(sc.nextInt(), sc.nextInt())); }Collections.sort(athlete); for (Body b : athlete) {if (b.weight > maxWeight) {answer++; maxWeight=b.weight; }}System.out.println(answer); }public static class Body implements Comparable<Body> {public int height; public int weight; public Body(int height, int weight) {this.height = height; this.weight = weight; }@Override public int compareTo(Body o) {return o.height - this.height; }}}90ms~126ms, 26mb 나옵니다
-
미해결홍드로이드의 To-Do 리스트 앱 만들기
구글콘솔 광고 ID
덕분에 현재 저만의앱을 만들고 출시 직전까지 와있습니다.근데 이 강의에는 그 질문이 없는데 새롱 변경된 구글콘솔 질문에 앱에서 광고 ID를 사용하나요?라는 질문이 있는데 뭔말인지 모르겠습니다!애드몹에서 광고를 사용하는데 그거 말하는걸까요? 근데 그부분은 이미 앱에 광고가 있다는 질문이 있었는데 이거와는 뭐가 다른건가요? 일단 '아니요'클릭하긴했는데 뭔말인지 잘모르겠습니다!도와주시면 감사하겠습니다!
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
MVC1편을듣고왔는데 바로 DB1편으로
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]MVC1편을듣고왔는데 바로 DB1편으로 넘어가도되나요 ?MVC2편은 DB1편을 듣고나서 MYBATIS로 MVC1편에서 배운내용을 토대로 자그마한 토이프로젝트 하나 만들어보고 MVC2편을 듣고싶은데 그렇게 해도될까요 ?
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
feature X 와 target y
feature 표현할 때는 대문자를 써서 X_train 으로 하고target 표현할 때는 소문자를 써서 y_train 으로 작성이 되고 있는데요.대소문자를 구별해서 사용하고 있는 특별한 사유가 있나요?
-
해결됨
원스크롤 원페이지 방식 구현
안녕하세요. 선생님 덕분에 기획을 조금 더 쉽고 재밌게 하고 있습니다.이번 프로젝트에서 원스크롤 원페이지 방식을 구현하게 되었는데,axure에서 구현해서 보여주려고 합니다. 혼합형이 아니라면 다이내믹 패널러 구성을 할텐데일반 스크롤 방식으로 진행되다 일정 Y축 영역으로 갔을 때 원페이지 원스크롤 방식으로 나와야 하는 문제가 있습니다. 이럴경우 어떻게 해결해야 할까요? 페이지 안에서도 텍스트들이 스크롤 다운트리거로 나와야 해서요. 일전에 문의가 있었을거 같은데 스크롤로 검색하니까 글이 너무 많이 나오네요 ㅠㅠ 매번 감사합니다.
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
메소드 리턴 질문이요!
번호와 주소는 String 으로 입력하고 그걸 출력하셨고액티비티는 매소드를 바로 출력에 입력해서 사용하셨는데요 액티비티처럼 다 할 수 있는데 왜 굳이 String 으로 한번 거쳐서 변수 이름을 바꾸고 출력하는가요??? 그래야하는 이유가 있을까요?
-
해결됨자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
workspace.xml 파일에 대한 질문 (.gitignore)
강의를 따라 하면서 단계마다 깃에도 커밋을 하고 있는데요코드가 변경될 때마다workspace.xml라는 파일은 건들지 않았는데도 계속 변경이 되어서 깃에 감지가 되더라구요.ChatGPT 한테 물어보니까 "이 파일에는 개발 환경 설정과 관련된 정보가 포함되어 있으며, 이 정보는 다른 개발자나 다른 컴퓨터에서는 필요하지 않을 수 있습니다."라고 하고 깃에 안 올려도 된다고 하길래 .gitignore 에 .idea/workspace.xml이렇게 추가를 해줬는데도 자꾸 깃에 감지가 됩니다.혹시 .gitignore에 추가했다고 바로 적용이 안되는 건지, 적용하는 방법이 따로 있는지 궁금합니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part8: Entity Framework Core
EF_Core_Power_Tools 설치 오류
다운로드 받고 실행하자마자 설치 실패뜨는데 왜그런걸까요..
-
해결됨독하게 시작하는 C 프로그래밍
[ 문자, 정수 입력과 개행문자 제거 ] scanf_s, gets_s 차이점
설명을 잠시 멈춰두고 혼자서 예제를 만들어봤습니다 근데 gets_s 함수대신 scanf_s 함수를 사용해서도 결과물이 똑같이 나왔는데 어떤걸 사용하든 상관이 없나요?#include <stdio.h>int main(void){ char szName[32] = { 0 }; int nAge = 0; printf("나이를 입력하시오 : "); scanf_s("%d", &nAge); printf("이름을 입력하시오 : "); scanf_s("%s", szName, sizeof(szName)); printf("\n"); printf("당신의 나이는 %d세 입니다\n", nAge); printf("당신의 이름은 %s입니다\n", szName); return 0;}
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
editForm에서 라디오 버튼
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]라디오 버튼을 복습하다가 수정 페이지에서 궁금한 점이 생겨 질문합니다.<div>상품 종류</div> <div th:each="type : ${itemTypes}" class="form-check form-check-inline"> <input type="radio" th:field="*{itemType}" th:value="${type.name()}" class="form-check-input"> <label th:for="${#ids.prev('itemType')}" th:text="${type.description}" class="form-check-label">BOOK</label> </div>만약에 아이템의 상품 종류가 책일 때,라디오 버튼이 반복문을 돌면서 모든 th:field의 itemType의 값은 책이 되는데 어떻게 책에 해당하는 버튼에만 체크 기능이 삽입되는지 궁금합니다.혹시 th:field에 값이 있다면 th:value와 비교해서 같다면 해당 라디오버튼에 checked가 삽입되는 걸까요?
-
해결됨자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
예외 처리에 대한 질문입니다.
안녕하세요 강사님. 15강. 유저 업데이트 API, 삭제 API 예외 처리 하기유저 업데이트 API, 삭제 API 에 예외 처리해 주는 부분을 수강 중인데요 궁금한 점이 있어서 질문 남깁니다. 존재하지 않는 사용자에 대해서 수정하거나 삭제하려는 상황에 대해서 예외 처리를 해주고 있는데,'존재하지 않는 사용자에 대해서 수정하거나 삭제하려는 경우'가 포스트맨을 이용하여 요청할 때는 일어날 수도 있는 경우겠지만,사용자는 웹 UI를 이용해서 수정, 삭제하기 때문에 저런 경우가 아예 생기지가 않을 것 같은데,(화면에 보이는 유저 리스트에서 선택하여 수정하거나 삭제하기 때문에)그런데도 예외 처리를 해줘야 하는 이유가 있는지 궁금합니다.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
css in js 관련 질문드립니다!
안녕하세요! 현재 리액트 초반부 강의 수강중에 있습니다.포트폴리오 코딩중에 있는데 css in js 에서 일반적인 css에서 처럼 전체선택자 *를 사용하여box-sizing: border-box; 로 하고싶은데 검색하봐도 방법이 나오지 않습니다.. css in js 에서 전체선택자는 어떤식으로 사용할 수 있을까요?MDN 처럼 css in js 관련 아카이브가 따로 있을까요?