묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨ElasticSearch Essential
여섯번째 강의 - 색인 과정 강의를 들으며
안녕하세요 강의를 들으면서 궁금한 점이 생겨서 질문드립니다.실제 운영중인 엘라스틱서치에서 샤드 최적화를 어떻게 이루어야할지 입니다. 샤드 최적화를 진행할 때 처음부터 완벽한 샤드 배치를 세울 수 없어서 성능를 확인 하며 샤드의 수를 늘리거나 데이터 노드를 스케일 아웃/업 하면서 최적의 수치를 찾아가라고 하셨습니다.한번 인덱스를 생성할 때 설정된 샤드의 개수는 절대 변경이 불가능한데 그런 방법중 Reindex API를 사용하여 하는 방법으로 진행해야할까요 ? 아니면 또 다른 방법이 있을까요 ?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-S
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <algorithm> #include <map> #include <set> #include <vector> #include <queue> #include <cstring> int N, M; int cache[10001] = {-1,}; int traverse(std::map<int, std::vector<int>>& treeMap, int node) { if (treeMap.find(node) == treeMap.end()) { cache[node] = 1; return 1; } if (cache[node] != -1) { return cache[node]; } int sum = 0; std::vector<int> v = treeMap[node]; for (int i = 0; i < v.size(); ++i) { int tmp = traverse(treeMap, v[i]); sum += tmp; } cache[node] = sum + 1; return sum + 1; } int main() { std::ios_base::sync_with_stdio(false); std::cin.tie(nullptr); std::cout.tie(nullptr); std::cin >> N >> M; memset(cache, -1, sizeof(cache)); std::map<int, std::vector<int>> treeMap; for (int i = 0; i < M; ++i) { int from, to; std::cin >> to >> from; if (treeMap.find(from) == treeMap.end()) { std::vector<int> v; v.reserve(N); v.push_back(to); treeMap[from] = v; continue; } treeMap[from].push_back(to); } std::map<int, std::vector<int>> countMap; int maxCount = 0; for (auto iter : treeMap) { const int startNode = iter.first; memset(cache, -1, sizeof(cache)); int nodeCount = traverse(treeMap, startNode); maxCount = std::max(maxCount, nodeCount); if (countMap.find(nodeCount) == countMap.end()) { std::vector<int> v; v.push_back(startNode); countMap[nodeCount] = v; continue; } countMap[nodeCount].push_back(startNode); } for (int i = 0; i < countMap[maxCount].size(); ++i) { std::cout << countMap[maxCount][i] << " "; } std::cout << std::endl; return 0; }답이 틀렸다고 나오는데 어디서 왜 틀렸는지 잘 모르겠습니다. 혹시 이 부분을 설명해주실 수 있으실까요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
bindingResult
@Controller에는 bindingResult의 message를 국제화하여 messages.properties 한꺼번에 저장을 했는데 REST에서는 spring.messages.basename=messages,errors 를 설정해주어도 안되고 따로 message처리 설정을 해야하나요?
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
크롤링 프로그램 완성: 크롤링한 데이터에서 다시 크롤링하기2
강의제목 - 크롤링 프로그램 완성: 크롤링한 데이터에서 다시 크롤링하기2 강의시간 4분 40초 부분에 나오는 지마켓 베스트 100의 판매업체 선택자 부분이 조금 바뀌어서 강의에 나온코드대로 하면 크롤링이 안되요. 아래처럼 바꾸니 제대로 되요.기존 판매업체 선택자 코드provider_info = soup_info.select_one("div.item-topinfo > div.item-topinfo_headline > p > a > strong")새로 바뀐 판매업체 선택자 코드provider_info = soup_info.select_one("div.item-topinfo_headline span.text__seller > a")이렇게 올려주신 코드도 해보고 안돼서 혼자 분석해서 해봤는데도 모르겠어서 질문드립니다.이부분 어떻게 작성해야하나요?
-
해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
연결리스트 질문입니다.
선생님 안녕하세요. 질문이 있습니다. 1️⃣ insertAt() 함수에서 에러 처리할 때if(index > this.count) 마지막 인덱스에 데이터가 삽입이 될 수 있어서 초과로 한걸까요?deleteAt(), getNodeAt() 함수에서 에러 처리할 때if(index >= this.count) 마지막 인덱스가 없기 때문에 이상으로 한걸까요? 헤깔려서 정리하면서 여쭤봅니다.2️⃣ insert 함수 만들 때와 다르게 delete, getNode 함수 만들 때 return 한 이유가 궁금합니다. 강의를 반복해서 듣는데. 헤깔리는게 자꾸 생기네요ㅜ..ㅎ
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
안녕하세요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]1. api를 이용해서 개발을 하면 웹 뿐만 아니라 다른 곳(앱 등)에서도 사용이 가능한건가요? 사용이 가능하다면 사용 제약이 따로 있을까요? ( 바로 전 강의인 "실전! 스프링 부트 웹 프로젝트 1" 과의 차이점이 궁금합니다 )2.OrderSimpleApiController 에서 @RestController 로 사용하는 이유가 있을까요?3. 연관 관계가 있는 엔티티 중 하나에 @JsonIgnore 을 해줄 때 두 엔티티 중 어떤 엔티티로 기준을 잡으면 되나요?
-
해결됨리눅스 커맨드라인 툴 (Full ver.)
특정 디렉토리를 제외하고 삭제가 가능할까요?
home 디렉토리 밑에 a, b, c, d, e 디렉토리가 있고각 디렉토리 밑에는 a1,a2,a3,a4,a5, ......, a100와 같이 100개의 디렉토리가 있다고 할때,디렉토리 c , 디렉토리 c33, c33안에 들어있는 파일 을 제외하고 모두 삭제 할 수 있을까요?(각 디렉토리는 모두 파일을 가지고 있음) 저는 아래와 같이 생각했는데 원하는대로 안될것 같고 더 좋은 방법이 있을꺼같아 질문드립니다.find /home/c/* ! -name "c33" -exec rm -r {} \;rm -r home/arm -r home/brm -r home/drm -r home/e
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
if (loginMember == null)의 존재 이유
HomeController.java @GetMapping("/") public String homeLoginV3(HttpServletRequest request, Model model) { HttpSession session = request.getSession(false); //세션 저장소에 해당 세션이 존재하지 않음 if (session == null) { return "home"; } //세션 저장소에 해당 세션이 존재함 Member loginMember = (Member) session.getAttribute(SessionConst.LOGIN_MEMBER); if (loginMember == null) { return "home"; } model.addAttribute("member", loginMember); return "loginHome"; }위 코드에서 'if (loginMember == null) { ... }' 코드가 존재하는 이유는, loginMember가 null인 경우는 없지만 session.getAttribute()가 스펙상 null을 반환할 수 있기 때문인 것이 맞을까요..?세션 저장소에 세션이 없는 경우는 있지만, 세션이 있다고 하면 Member 객체가 무조건 존재하는 것이 아닌가요..??
-
미해결앨런 iOS 앱 개발 (15개의 앱을 만들면서 근본원리부터 배우는 UIKit) - MVVM까지
트랙패드로 작업하기 좋을까요?
xcode를 트랙패드로 작업하기 좋을까요? 강사님은 트랙패드로 작업하시나요, 마우스로 작업하시나요?
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
01-01. 문자찾기에서 부호 >= 와 > 의 차이가 궁금합니다.
선생님 안녕하세요. 01-01. 문자찾기 문제를 푸는 중에 궁금한 점이 생겨서 질문 드립니다. import java.util.Scanner; public class Ch01_1 { public int solution(String s, char c) { int solution = 0; s = s.toUpperCase(); c = Character.toUpperCase(c); for(int i=0 ; s.length() > i; i++ ) if(s.charAt(i)== c) solution++; } return solution; } public static void main(String[] args) { Ch01_1 ch = new Ch01_1(); Scanner sc = new Scanner(System.in); String s = sc.next(); char c = sc.next().charAt(0); sc.close(); System.out.println(ch.solution(s,c)); } }여기서 상단의 for(int i=0 ; s.length() > i; i++ ) 부분에서 궁금한 점이 있는데요 ! 선생님이 알려주신 풀이인 s.length() >= i 가 아니라 s.length() > i로 풀면 아래와 같이 오류가 뜨는데, 이유가 궁금해서요 ! ! >= i 랑 > i 랑 큰 차이가 있는건가요? 반복횟수랑 문자열 s의 길이가 '같거나 작을 경우' 라는 조건은 안되는걸까요?? (오류 사진입니다.)
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
이클립스 프로젝트 열면 오류납니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]sts에서 프로젝트 생성 후 프로젝트 열었는데 에러가 뜨네요.마켓플레이스에서 스프링 툴 3을 추가하고 열어도 자꾸 빨간줄이 뜹니다.
-
미해결스프링부트 시큐리티 & JWT 강의
만약 존재하지 않는 ID가 들어올 경우는 어떻게 하는게 좋을까요?
강사님 안녕하세요.강의 늘 잘 보고 있습니다. 25강 내용에서,올바른 id일 경우 password 일치 여부에 따라 404 혹은 401 에러를 응답하는 것은 확인했습니다.헌데 id 자체가 잘못되었을 경우 서버 에러(500)가 발생하더라구요.잘못된 ID 입력에 대한 처리를 어떻게 하는게 좋을 지 궁금합니다.Service 계층(loadUserByUsername)에서 한번 검사를 한 후, 통과되었을 시 UserDetails을 return하는 식으로 구현하나요?이 경우, loadUserByUsername의 return값은 어떤 것이 권장되는지 궁금합니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
jpa-hibernate 버전 질문입니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요 우선 좋은 강의 감사드립니다.강의를 하셨던 과거와는 다르게 현재 spring 버전이 업데이트가 많이 되어 지금 사용중인 버전이 3.0.2 버전인데, 해당 버전 docs reference에 보면 6.1.6.Final 버전을 권장하고 있는데 해당 버전에는 entitymanager가 있지 않습니다. 이럴때는 core로 의존성 추가해서 사용해도 되나요??
-
미해결Slack 클론 코딩[백엔드 with NestJS + TypeORM]
@nestjs/core의 import 문제
우선 잘 되는것이 갑자기 안되는데 해결이 안되서 질문을 올립니다. 우선 제가 한 작업은 다음과 같습니다.7강의 typeorm 커넥션 맺기까지 완료 한 후 nest g res {service name}을 실행하여 테스트 했습니다폴더가 생기면서 service, module, controller가 생기는것을 확인 한 후 삭제했습니다.이후 yarn start:dev를 실행하면 아래와 같이 에러가 났습니다. yarn run v1.22.19warning ..\package.json: No license field$ nest build --webpack --webpackPath webpack-hmr.config.js --watchInfo Webpack is building your sources...ERROR in ./src/main.ts:1:29TS2307: Cannot find module '@nestjs/core' or its corresponding type declarations.> 1 | import { NestFactory } from '@nestjs/core';| ^^^^^^^^^^^^^^2 | import { DocumentBuilder } from '@nestjs/swagger';3 | import { SwaggerModule } from '@nestjs/swagger/dist';4 | import { AppModule } from './app.module';webpack 5.75.0 compiled with 1 error in 3426 msE:\web-message\dist\main.js:1834/******/ throw e;^Error: Cannot find module '@nestjs/core'Require stack:- E:\web-message\dist\main.jsat Module._resolveFilename (node:internal/modules/cjs/loader:1039:15)at Module._load (node:internal/modules/cjs/loader:885:27)at Module.require (node:internal/modules/cjs/loader:1105:19)at require (node:internal/modules/cjs/helpers:103:18)at Object.<anonymous> (E:\web-message\dist\main.js:196:18)at __webpack_require__ (E:\web-message\dist\main.js:1831:33)at fn (E:\web-message\dist\main.js:1938:21)at Object.<anonymous> (E:\web-message\dist\main.js:166:16)at __webpack_require__ (E:\web-message\dist\main.js:1831:33)at E:\web-message\dist\main.js:2757:37 {code: 'MODULE_NOT_FOUND',requireStack: [ 'E:\\web-message\\dist\\main.js' ]}Node.js v18.13.0우선 warning ..\package.json: No license field 이 부분을 해결하기 위해 찾아보니..package.json의 private: true를 설정해 주라고 했지만, 이미 되어 있기 때문에 해결을 못했습니다. 그 다음ERROR in ./src/main.ts:1:29TS2307: Cannot find module '@nestjs/core' or its corresponding type declarations.> 1 | import { NestFactory } from '@nestjs/core';이 부분을 해결해 보기 위해 다음과 같은 작업을 했습니다.@nestjs/core의 삭제 및 재설치node_modules 폴더 삭제 및 재설치nestjs/core와 swagger의 충돌 문제가 있다는 얘기에 nestjs/core를 9.0.0으로 nestjs/common을 9.0.0으로, nestjs/platform-express를 9.0.0으로 수정하여 재설치 했으나 여전히 동일한 문제 발생 아래는 현재 저의 package.json입니다{ "name": "web-message", "version": "0.0.1", "private": true, "description": "", "author": "", "license": "UNLICENSED", "scripts": { "build": "nest build", "format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"", "start": "nest start", "start:dev-backup": "nest start --watch", "start:dev": "nest build --webpack --webpackPath webpack-hmr.config.js --watch", "start:debug": "nest start --debug --watch", "start:prod": "node dist/main", "lint": "eslint \"{src,apps,libs,test}/**/*.ts\" --fix", "test": "jest", "test:watch": "jest --watch", "test:cov": "jest --coverage", "test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand", "test:e2e": "jest --config ./test/jest-e2e.json" }, "dependencies": { "@nestjs/common": "^9.3.2", "@nestjs/config": "^2.3.0", "@nestjs/core": "^9.3.2", "@nestjs/platform-express": "^9.0.0", "@nestjs/swagger": "^6.1.4", "@nestjs/typeorm": "^9.0.1", "mariadb": "^3.0.2", "reflect-metadata": "^0.1.13", "rxjs": "^7.2.0", "swagger-ui-express": "^4.6.0", "typeorm": "^0.3.11", "typeorm-extension": "^2.4.2" }, "devDependencies": { "@nestjs/cli": "^9.0.0", "@nestjs/schematics": "^9.0.0", "@nestjs/testing": "^9.0.0", "@types/express": "^4.17.13", "@types/jest": "29.2.4", "@types/node": "18.11.18", "@types/supertest": "^2.0.11", "@typescript-eslint/eslint-plugin": "^5.0.0", "@typescript-eslint/parser": "^5.0.0", "eslint": "^8.0.1", "eslint-config-prettier": "^8.3.0", "eslint-plugin-prettier": "^4.0.0", "jest": "29.3.1", "prettier": "^2.3.2", "run-script-webpack-plugin": "^0.1.1", "source-map-support": "^0.5.20", "supertest": "^6.1.3", "ts-jest": "29.0.3", "ts-loader": "^9.2.3", "ts-node": "^10.0.0", "tsconfig-paths": "4.1.1", "typeorm-model-generator": "^0.4.6", "typescript": "^4.7.4", "webpack": "^5.75.0", "webpack-cli": "^5.0.1", "webpack-node-externals": "^3.0.0", "webpack-pnp-externals": "^1.1.0" }, "jest": { "moduleFileExtensions": [ "js", "json", "ts" ], "rootDir": "src", "testRegex": ".*\\.spec\\.ts$", "transform": { "^.+\\.(t|j)s$": "ts-jest" }, "collectCoverageFrom": [ "**/*.(t|j)s" ], "coverageDirectory": "../coverage", "testEnvironment": "node" } } 뭔가... 업데이트를 하면서 문제가 생긴것 같아 찾던 중nestjs@core와 swagger는 상호 작용하는 버전이 있다고 하던데 그것은nest 9.X 미만에서 그런 것이고 github에 올려주신 package.json에도 9.X이상의 nestjs를 쓰신것으로 확인하여 swagger와의 충돌 문제는 아닌 것으로 생각했습니다. 어떻게 해결하면 좋을까요~? 참 참고로nestjs : 9.1.8yarn: 1.22.19node: 18.13.0을 사용하고 있습니다.
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 기본편
질문있습니다
안녕하세요 셀레니움을 사용해 상품 정보를 가지고 오는 것 까지 수강 했는데 추가적으로 상품을 하나하나 들어가서 상품 상세페이지와 옵션값(색상,사이즈) 까지 가지고 오는 경로를 생각 해보고 싶은데요 이런 경우에 스타트코딩님 실전편 결제 해서 들으면 생각을 해볼 수 있을까요 ?
-
미해결홍정모의 따라하며 배우는 C++
too long이 나오는 이유 그냥...
언더플로우 일어난거 아닌가요?이 부분 입니다!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
강의 내용 정리
코딩 테스트 준비를 처음하는 취준생입니다. 다름이 아니라 학습 내용 정리 및 학습을 했다는 나름의 증명으로 개인 blog에 내용을 정리하고자 합니다.코드랑 수업 내용 일부분을 캡쳐 해서 블로그에 사용해도 되는지 궁금해서 질문을 남깁니다.출처는 반드시 밝히겠습니다!
-
미해결Do it! 자바 프로그래밍 입문 with 은종쌤
책에 자료실
혹시 책에 자료실 참고하라고되어있는데 자료실이 어디있나요?
-
미해결생초보를 위한 프리미어 프로 2022
연습자료는 어디서 구하나요
연습 자료는 어디서 구하나요더보기 있다고 하는데 아무리 찾아봐도 없어서요혹시 여기는 탑재 안하신건지요
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
PostCard import 오류
import 문제 없어 보이는데 댓글 확인을 누르면 오류 페이지가 뜹니다..PostCard.jsimport React, { useState, useCallback } from 'react'; import { Card, Button, Avatar, Popover, List, Comment } from 'antd'; import PropTypes from 'prop-types'; import { RetweetOutlined, HeartTwoTone, HeartOutlined, MessageOutlined, EllipsisOutlined } from '@ant-design/icons'; import styled from 'styled-components'; import Link from 'next/link'; import { useSelector } from 'react-redux'; import PostImages from './PostImages'; import CommentForm from './CommentForm'; const PostCard = ({post}) => { const [liked, setLiked] = useState(false); const [commentFormOpened, setCommentFormOpened] = useState(false); const id = useSelector((state) => state.user.me && state.user.me.id); const onToggleLike = useCallback(() => { setLiked((prev) => !prev); }, []); const onToggleComment = useCallback(() => { setCommentFormOpened((prev) => !prev); }, []); return ( <div style={{matginBotton: 20}}> <Card cover={post.Images[0] && <PostImages Images={post.Images}/>} actions={[ <RetweetOutlined key="retweet"/>, liked ? <HeartTwoTone twoToneColor="#eb2f96" key="heart" onClick={onToggleLike} /> : <HeartOutlined key="heart" onClick={onToggleLike} />, <MessageOutlined key="message" onClick={onToggleComment} />, <Popover key="more" content={( <Button.Group> {id && post.User.id === id ? ( <> <Button>수정</Button> <Button type="danger">삭제</Button> </> ) : <Button>신고</Button>} </Button.Group> )}> <EllipsisOutlined/> </Popover>, ]} > <Card.Meta avatar={<Avatar>{post.User.nickname[0]}</Avatar>} title={post.User.nickname} description={post.content} /> </Card> {commentFormOpened && ( <div> <CommentForm post={post}/> <List header={`${post.Comments.length}개의 댓글`} itemLayout="horizontal" dataSource={post.Comments} renderItem={(item) => ( <li> <Comment author={item.User.nickname} avatar={<Avatar>{item.User.nickname[0]}</Avatar>} content={item.content} /> </li> )} /> </div> )} </div> ); }; PostCard.propTypes = { post: PropTypes.shape({ id: PropTypes.number, User: PropTypes.object, content: PropTypes.string, createdAt: PropTypes.object, Comments: PropTypes.arrayOf(PropTypes.any), Images: PropTypes.arrayOf(PropTypes.any), }), }; export default PostCard