묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결Do it! 자바 프로그래밍 입문 with 은종쌤
비트 연산자 질문입니다.
int num1 = 2; int num2 = 10; System.out.println(num1 & num2); //2 System.out.println(num1 | num2); //10 System.out.println(num1 ^ num2); //8 System.out.println(~num1); //3 이렇게 4가지 답이 나오는게 이해가 안갑니다 ㅠㅠ
-
해결됨블로그 자동화 프로그램 개발 강의 (파이썬 + 셀레니움)
서로 이웃 추가 버튼 클릭 시 Mac 오류
안녕하세요.강의듣고 공부중에 Mac OS에서 Windows에서 나지 않던 위와 같은 오류가 나서 문의드립니다.서로이웃 신청 버튼 클릭 시 .click() 블로그 접속 불가라는 탭이 하나 생성되는데요. 이유를 알 수 있을까요?감사합니다.
-
미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
보통 에디터는 어떻게 처리하시나요?!
에디터를 구현해보려고 하는데에디터 내에서 이미지 삽입시 업로드 하는게 보통인가요?노드버드 구현시에도 그랬었어서요!그래도 multer 에서 base64 를 업로드 할수 있나요?아니면 다른 방법을 써야할까요?그리고 제로초님께서 따로 추천하시거나 사용하시는 에디터가 있으실까요??조금 만져봤는데 이미지 구현때문에 머리가 아파서 ㅎㅎ도움 부탁드립니다!!
-
미해결
2차원배열(대각선)
#include <stdio.h> void main() { int a[5][5]={0}; int i,j,cnt=0; for(i=0; i<5; i++) { for(j=0; j<=i; j++) { cnt++; a[j][i-j]=cnt; } } for(i=1; i<5; i++) { for(j=i; j<5; j++) { cnt++; a[j][i-j+5-1]=cnt; } } for(i=0; i<5; i++) { for(j=0; j<5; j++) { if(a[i] [j]==0) { printf(" "); } else { printf("%3d",a[i] [j]); } } printf("\n"); } } 혹시 이 코드를 while문으로 쓰면 어떻게 쓰나요?
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
[장난꾸러기]채점시 어디가 잘못된건가요 ?
테스트케이스는 통과하는데, 채점하면틀렸다고 나오네요 ..로직은처음에 정렬이 잘못돼있는 값의 위치(순서)를 answer[0]에 넣고, 해당 요소값을 temp에 넣음. 배열을 정렬 ( 바뀐 두 값이 서로 바뀜 )정렬된 배열을 돌면서 temp와 값이 같은 요소의 위치값 반환.. import java.util.*; import java.util.Arrays; class Main { public int[] solution(int n, int[] arr) { int[] answer=new int[2]; int temp=0; for(int i=1; i<arr.length; i++){ if(arr[i]<arr[i-1]) { answer[0] = i; temp=arr[i-1]; Arrays.sort(arr); break; } } for(int i=0; i<arr.length; i++){ if(arr[i]==temp) answer[1]=i+1; } return answer; } public static void main(String[] args) { Scanner kb = new Scanner(System.in); Main T = new Main(); int n=kb.nextInt(); int[] arr=new int[n]; for(int i=0; i<arr.length; i++){ arr[i]=kb.nextInt(); } for(int x:T.solution(n,arr)) System.out.print(x+" "); } }
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
5주차 개념강의 중 그리디의 개념에 대해 질문드립니다
안녕하세요그리디를 배우면서1) 무식하게 > 2) DP > 3) 그리디 순서로 문제를 접근해보라고 배웠습니다.그와 함께 그리디는 현재 인덱스를 기준으로 최선의 해라고 생각되는 것이 전체의 최적해가 될 수 있음을 갖고 푸는 것이며, 최적부분구조 및 탐욕적 속성을 갖는 경우에 사용한다.>> 하지만 우리는 '이게 되지 않을까?'라는 생각으로 접근하여 그리디를 사용한다.라고 배웠습니다. DFS, BFS, 비트마스킹 완전탐색, 백트래킹 등은 그래도 A=B이다 라는 식으로 해당 개념이 공식처럼 와닿았습니다. 하지만 그리디의 경우 단순히 "정렬 및 우선순위 큐를 활용하면 그리디다"는 아닌 것 같습니다.제가 이해한 바로는1) 그리디는 말 그대로 '이렇게 풀면 되지 않을까?'라고 시도해보는 접근방법이다 - 명확한 공식이 있는 것이 아니다 -2) 하지만 그리디는 정렬 및 우선순위큐를 활용하는 문제가 빈번하다3) 정렬 및 우선순위큐로 풀리지 않는다면 그 외의 다른 최선의 방법을 강구해본다.이렇게입니다.제가 그리디에 대해 이해한 것이 맞을까요?3)의 경우로 가야한다면 다른 방법이 있는 것인지, 경험에 의해 고민해가며 해결해나가야 하는 것인지 궁금합니다.감사합니다.
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
Dto 관련 질문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예[질문 내용]안녕하세요 DTO 관련해서 질문이 있습니다. Entity를 Controller에서 사용하면 안되어 값을 받을 때 DTO로 받고 이를 Entity로 다시 변환 후 서비스로 값을 넘기더라구요.우리가 저장을 한다고 할 때, 넘어오는 값이 id, pw, name, email, address 등등 해서 많은 값이 넘어오면 이를 DB에 저장을 해줘야 하잖아요. 그러면 DTO를 Entity와 똑같은 필드를 가진 객체로 만들어 사용하는 건가요?그리고 회원가입도 간편가입, 홈페이지 가입 등 반환되는 값이 다르다고 하셨는데 이런 경우는 하나의 DTO에 모든 필드들을 다 집어넣고 로직마다 필요한 값을 빼서 쓰는 게 나은지 아니면 각각의 로직별로 DTO를 다 만드는 게 나은지 알고 싶습니다. 감사합니다2 질문 ex홈페이지 가입 필요 필드(name, age, date)간편가입 (id, pw)이럴 때 하나의 DTO에 5개 필드를 모두 넣은 DTO를 사용하는게 좋은지, 아니면 홈페이지용, 간편용 DTO를 두개 만드는게 나은지에 대한 질문입니다
-
미해결Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex
깃허브 권한요청 부탁드립니다!
인프런 아이디: tjdals4630@naver.com인프런 이메일: tjdals4630@naver.com깃헙 아이디: tjdals4630@naver.com깃헙 Username: a095678깃헙 권한요청 드립니다!
-
미해결따라하며 배우는 리액트 A-Z[19버전 반영]
tailwindcss 적용이 안 됩니다
따라 치면서 실습하는데 적용이 안 되길래 삽질 하다가혹시나 싶어서 강의 자료를 다운 받아 npm run start 해 보았는데요그것도 이렇게 적용이 안 되게 보이네요...뭐가 문제일까요? ㅜ.ㅜ
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
39분 때 em.clear()에 관해서 질문이 있습니다.
강의에서 39분 쯤에 em.detach(), em.close()는 왜 프록시가 초기화가 안되는지 이해했습니다.근데 em.clear()는 단순히 영속성 컨텍스트를 비우는 것으로 아는데원래 프록시가 영속성 컨텍스트에 초기화 요청을 하고 없으면 DB에 조회를 해서 실제 Entity를 target으로 가져오는 것으로 이해를 했는데 em.clear()로 비워져있다고 refMember.getUsername()이 왜 안되는 것인지 이해가 가질 않았습니다. 그래서 생각해본 결과 질문이 있습니다.Q. 혹시 프록시 초기화를 요청하는 과정이 em.getReference()로 조회를 하면 그때 이미 프록시 객체가 진짜 객체 대신에 영속성 컨텍스트에 보관되고 뒤에 refMember.getUsername()이나 기타 다른 초기화 요청이 올 때 영속성 컨텍스트에서 DB로 조회해서 실제 객체를 프록시 내부로 들이는 것인가요...?
-
미해결Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex
깃헙 권한 요청드립니다.
인프런 아이디 : kimkim200011@gmail.com인프런 이메일 : kimkim200011@gmail.com깃헙 아이디 : kimkim200011@gmail.com깃헙 Username : Abbbyy
-
미해결Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex
깃허브 권한 요청 드립니다.
인프런 아이디 : yejinelee.421인프런 이메일 : yejinlee.421@gmail.com깃헙 아이디 : bambi_21@daum.net깃헙 Username : yejineer
-
미해결CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
React가 MVC 패턴의 예시인 이유가 궁금합니다
안녕하세요부제 MVC MVP MVVM 패턴 강의를 보던 중에 의문이 들어서 글을 남깁니다.제가 알기로는 리액트는 초기 개발 철학에서 flux 패턴을 따르며 이는 단방향 데이터 바인딩 따릅니다. 리액트 초기에 가장 많이 사용되는 redux 철학 역시 이러한 단방향 데이터 바인딩을 잘 보여줍니다(action -> dispatch -> store -> view)그런데 MVC는 뷰가 변경되면 컨트롤러에 반영되고 이를 모델에 반영하거나모델이 변경되면 컨트롤러에 반영되고 이를 뷰에 반영하는양방향 데이터 바인딩을 기본으로 합니다. React가 라이브러리로 여겨져 프로그래머가 MVC로 구현하겠다고 (실제로 이런 코드를 본적이 없지만) 하여 React가 MVC 패턴이 되는 것은 아닌것 같습니다.선생님이 생각하시는 React가 MVC 패턴이 되는 구체적인 이유가 궁금합니다.
-
미해결냉동코더의 알기 쉬운 Modern Android Development 입문
compose 에 관하여 질문드립니다.
강의 내용과는 상관없지만, 그냥 궁금증이 들어 질문드립니다.최근 구글 i/o를보면 composable 한 코딩에 굉장히 힘을 실어주고 있다는 느낌을 받았는데요.공부하는 학생의 입장에서는 공부할거리가 늘어 부담? 이 되는 상황인데, 현직자의 입장에서 현업에서 현재 composable한 함수로 리팩토링을 하고있는지 궁금합니다.이쪽업계에서 일을 하고 싶다면 공부를 하는편이 더 좋을까요?
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
변수의 선언 위치 질문입니다.
class _TopPartState extends State<_TopPart> { DateTime selectedDate = DateTime.now(); @override Widget build(BuildContext context) { DateTime now = DateTime.now();DateTime selectedDate의 경우는 클래스 내부에 선언되어 있고 제 생각에는 createState에 초기화가 될 거 같습니다.즉, 화면이 처음 그려질 때 시간에 대한 정보를 가지고 있는 것 같아요.궁금한 점은 DateTime now가 selectedDate와 같은 공간에 선언되지 않고 build에 선언된 이유는 setState(...)를 호출할 때 dirty-> build -> clean과정을 거치게 하기 위함 때문인가요?
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
채점 오류
이런 오류가 뜨는 이유가 뭘까요? 작성하신대로 코드 작성했습니다.
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
인텔리제이 질문이요ㅠㅠ
인텔리제이에서 새로운 패키지를 만들고 싶은데 create하면 rename이 계속 되네요.구글 쳐도 잘 안나오는데 혹시 이거 어떻게 하면 멈출수 있죠..? 공부하는데 은근 신경이 쓰이네요 ㅠㅠ 새 package만들고 싶은데 계속 .** 으로 이름만 추가되요ㅠㅠㅠ
-
미해결[유니티 레벨 업!] 모듈식으로 개발하는 퀘스트&업적 시스템
QuestTrackerView.cs 의 foreach 부분을 지울 경우, QuestTrackerUI 가 업데이트 되지 않는 이유는 무엇인가요?
먼저, 좋은 강의 정말 감사드립니다. 모듈화를 처음 접해보아서 조금 어렵긴 하지만, 큰 도움이 되는 강의라고 생각합니다. 강의를 듣고, 다시 코드를 이해하던 중 QuestTrackerView.cs 에서 이벤트에 등록하는 부분이 존재할 경우, foreach 부분이 없어도 자동으로 QuestSystem.cs 에서 onQuestResgistered.Invoke() 에서 등록이 될 것이라고 생각해서 foreach 부분을 주석처리 해도 된다고 생각했는데, 실제로 주석처리를 할 경우 QuestTrackerUI 가 업데이트 되지 않아서 코드 동작 방식이 궁금하여 질문드립니다. (그림 1: 강의를 따라한 경우 정상적으로 작동하는 모습)제가 이해한 내용은 다음과 같습니다. 먼저 QuestTrackerView.cs 에서 QuestSystem.Instance.onQuestRegistered += CreateQuestTracker;를 통해 이벤트에 등록합니다. 그 후 QuestSystem.cs 의 onQuestRegistered?.Invoke(newQuest);부분에서 QuestGiver 에 의해 받은 퀘스트가 등록되므로, QuestTrackerView.cs 의 CreateQuestTracker 가 실행될 것이라고 생각했습니다. 즉, foreach (var quest in QuestSystem.Instance.ActiveQuests) { CreateQuestTracker(quest); }부분은 필요 없을 것이라고 생각했습니다. 그러나 이 부분을 주석처리하고 실행하니 (즉 아래 코드와 같이 돌리니) UI 가 없데이트 되지 않았습니다. //QuestTrackerView.cs private void Start() { QuestSystem.Instance.onQuestRegistered += CreateQuestTracker; //foreach (var quest in QuestSystem.Instance.ActiveQuests) //{ // CreateQuestTracker(quest); //} }(그림 2 - 주석처리를 하고 게임을 실행한 경우 QuestTrackerUI 가 생기지 않는 모습 )QuestSystem.cs 의 Register 메소드도public Quest Register(Quest quest) { var newQuest = quest.Clone(); if (newQuest is Achievement) { newQuest.onCompleted += OnAchievementCompleted; activeAchievements.Add(newQuest); newQuest.OnRegister(); onAchievementRegistered?.Invoke(newQuest); } else { newQuest.onCompleted += OnQuestCompleted; newQuest.onCanceled += OnQuestCanceled; activeQuests.Add(newQuest); newQuest.OnRegister(); Debug.Log($"is on quest registered true? {onQuestRegistered == null}"); onQuestRegistered?.Invoke(newQuest); } return newQuest; }와 같이, activeQuest.Add(newQuest) 를 통해 activeQuest를 업데이트하고, onQuestRegistered?.Invoke(newQuest)를 합니다. 그렇다면 왜 똑같은 code block 에서 업데이트 되는 activeQuest 를 foreach 로 돌면서 UI 업데이트를 하는 것은 제대로 동작하는데, onQuestRegisterd?.Invoke(newQuest) 에서 UI 업데이트를 하는 것은 정상적으로 작동하지 않는 것인가요? 감사합니다.
-
미해결Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex
깃허브 권한 요청 드립니다.
인프런 아이디 : jeongwon.been@gmail.com인프런 이메일 : jeongwon.been@gmail.com깃헙 아이디 : jeongwon.been@gmail.com깃헙 Username : jbeen0606
-
미해결Kevin의 알기 쉬운 RxJava 1부
DROP 배압 전략에 관한 궁금증
안녕하세요? DROP 배압 전략을 들으면서 이해가 잘 되지 않는 부분이 생겨서 질문드립니다. 이전에 공지해 주신 https://www.inflearn.com/news/527932 도 확인한 상태입니다.위 공지 사항에 내용을 토대로 들어보면, observeOn()의 bufferSize는 발행된 데이터가 담기는 버퍼와는 무관한 스레드를 담는 버퍼로 이해를 하였습니다.그렇다면, DROP 배압 전략이 수행되면 발행된 데이터는 별도의 버퍼에 담기는 것이 아니라 소비자가 데이터를 처리할 때까지 모조리 DROP하는 방식이 맞을까요?만약 이 내용이 맞다면, PPT에 작성해 주신 아래 사진은 버퍼를 제거해야 하지 않을까 싶습니다.