묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
코드리뷰 부탁드리겠습니다.
function solution(str, list) { let mustWord = str.split(''); // c, b, a let fullWord = list.split(''); while (fullWord.length !== 0) { if (mustWord[mustWord.length-1] === fullWord[fullWord.length-1]) { mustWord.pop(); fullWord.pop(); } else { fullWord.pop(); } } return mustWord.length !== 0 ? "NO" : "YES";
-
미해결
리액트 이게 무슨에러죠 ㅠㅠ
진짜 찾아봤는데 이 에러를 어떻게 해결해야할지 모르겟습니다 ㅜㅜㅜ도와주세요ㅜㅜㅜㅜㅜ
-
미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
(꿀팁)bs4의 모듈위치를 확인할 수 없다는 오류가 뜰 때!!(문제가 되면 삭제하겠습니다)
https://studyhard24.tistory.com/235 <-----여기사이트에서 순서대로 보시고 따라하시면 됩니다.
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
argument 이름에 대해서 궁금합니다.
CustomTextField( label: '내용', isTime: false, onSaved: onSaved, initialValue: initialValue, ),안녕하세요. 두 가지 질문이 있습니다.위 위젯을 예시로 onSaved: onSaved 에서 왼쪽은 parameter, 오른쪽은 argument 라고 부르는 것이 맞을까요?강의의 대부분에서 저렇게 오른쪽의 argument를 따로 빼서 넣어주는 경우 왼쪽의 parameter와 이름이 같게 넣어주시는 경우가 많은데 현업에서는 대부분 이런 식으로 작성하나요? 변수 네이밍이나, 코드 작성은 주관적인 것이지만, 어떤 것이 좋은 코드인지 또 현업에서는 어떻게 쓰는지 궁금합니다.
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
윈도우 rabbitMQ 설치했는데 15672 접속이 안됩니다..
rabbitmq 정상적으로 실행은 되었는데localhost:15672 접속하면 페이지가 안뜹니다..운영체제 window이고..도와주세요....!
-
해결됨외워서 끝내는 네트워크 핵심이론 - 기초
L2 수준에서 MAC주소 입장에서(기준) 송신/수신 할때의 처리 흐름이 궁금합니다.
모든 강의를 수강했는데L3 IP Packet 입장에서 소스/도착지 IP주소로 어떻게 찾아가는지는 매번 자세하게 설명해주셔서 어느정도 감이 잡힌 것 같습니다.질문 내용은 L3 이전에 L2 수준에서 Frame 을 송신/수신할때MAC 주소를 보고 위 흐름과 비슷한 처리들을 할텐데자세하게 어떻게 처리되는지가 궁금합니다. 이 궁굼증이 문득 왜 들었냐면 곰곰히 생각해보면...1개의 NIC에 1개의 MAC주소가 있고, 여기에 나아가 1개의 IP주소가 할당될텐데 그렇다면 이 할당된 IP주소로 결국 해당 NIC까지 식별이 되는데 MAC 주소는 언제쓰지? 하는 생각이 들었습니다. NIC:MAC주소:IP주소가 1:1:1 매핑인데 결국 IP주소로 최종 END-POINT 까지 찾아갈수 있지 않을까? 하는 의문에서 시작된 부분이고니아가 L2 스위치의 역할도 MAC주소가 아니라 IP주소로 그냥 찾으면 되지 않나? 하는 생각도 드는데...분명 어딘가에서 크게 잘못 생각하고 있는거 같은데 그 부분을 잘 모르겠습니다....L2강의에서 목적지 MAC주소는 G/W의 Mac주소를 쓰신다고 말씀주셨었는데 이 과정이 구체적으로 어떻게 처리되는지 궁금하고 거꾸로 수신할때는 어떻게 처리되는지 궁금하네요~ 좋은강의 만들어주셔서 감사드리고 응원하겠습니다!
-
미해결Slack 클론 코딩[실시간 채팅 with React]
배포후 로컬에서 Index.html 열면 작동이 잘 안하는 이유
백엔드에 배포하려고 파일 넘기기 전에,,빌드가 잘 되었는지 테스트해보려고 (백엔드 먼저 켜두고)index.html을 그냥 브라우저로 열면 백엔드와 잘 연동될줄 알았는데, 첫 화면부터 보이지가 않아서요. 그 이유가 궁금합니다.이유가 혹시,,, 웹펙에서devServer: { historyApiFallback: true, // react router(원래 SPA에서는 3090/ 주소밖에 모른다. 뒤에 /login같은 경로는 우리가 가짜로 만들어낸건데 History api(History 기본함수)가 가짜주소를 만들어주는 거다.) port: 3090, devMiddleware: { publicPath: '/dist/' }, static: { directory: path.resolve(__dirname) }, proxy: { '/api/': { //프론트에서 /api/로 보내는 요청은 주소를 3095로 바꿔서 보내겠다 target: 'http://localhost:3095', changeOrigin: true, }, }, },위와 같이 dev모드일때는 3090포트 개발서버를 항상 켜두는데, 이처럼 뭔가 서버가 계속 켜있어야 프론트가 잘 작동 가능한건가요?? (그래서 배포할때 백엔드서버는 항상 켜있으니까 그냥 넘겨주면 된다는게 이해가 되는거 같아서요) 만약 그렇다면 프론트인데 빌드 결과물이 있는데 왜 계속 프론트만을 위한 서버가 켜있어야 하는지 궁금합니다,,저는 배포파일이 실행파일마냥 그냥 index.html 실행하면 (백엔드 켜져있어서 통신할 수 있다는 가정하에) 알아서 잘 되는줄 알았거든요,,
-
해결됨스프링 핵심 원리 - 기본편
AppConfig 리팩터링 관련 질문
강의를 듣던중 궁금한 것이 생겨서 질문합니다.AppConfig를 리팩터링하는 과정에서 아래와 같은 과정을 보았는데요.1. new MemoryMemberRepository() 2. private MemberRepository memberRepository() { return new MemoryMemberRepository(); } 1에서 2로 변환하는 과정에서 2번의 리턴값의 타입을 MemoryMemberRepository(구현 클래스)가 아닌 MemberRepository(인터페이스)로 해주어야한다고 하셨는데요. 사실 지금 이 상황에서는 구현 클래스로 지정해주어도 프로그램이 돌아가는데는 문제가 없을 것 같은데, 인터페이스로 지정한 이유는 추후에 MemberRepository의 구현 클래스를 변경할 여지가 있기 때문인가요?
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
쇼핑몰 크롤링 select, select_one 차이
잔재미코딩 선생님 우선 강의 정말 잘 듣고 있습니다.감사합니다. ^^ 크롤링 프로그램 완성: 크롤링한 데이터에서 다시 크롤링하기1 (업데이트)에서 질문드립니다. 수업자료에 올려주신 select로 태그를 가져오는 과정에서지마켓 bestitems는 왜 one으로만 작동하는 건지 궁금합니다.강의 찍어주시던 시기에는 bestitems 클래스가 2개가 있어서 select_one이 아닌 select를 사용하셨거든요. 이렇게 넣으면 왜 오류가 나는지 궁금해서 글을 남깁니다. 인터넷에 select와 select_one의 차이에 대해 찾아 봤으나 답을 얻지는 못해 문의드리게 되었습니다. 소중한 강의로 코딩을 알아가게 해주신 점 다시 한번 감사드립니다. ^^ #해당 코드import requestsfrom bs4 import BeautifulSoupres = requests.get('http://corners.gmarket.co.kr/Bestsellers?viewType=G&groupCode=G06')soup = BeautifulSoup(res.content, 'html.parser')# 2022.09.13 수정사항 (웹사이트 코드가 수시로 변경되면서, best-list class 를 가진 태그가 하나이기 때문에 해당 태그만 선택하도록 수정)bestitems = soup.select('div.best-list') # select_one() 은 해당 조건에 맞는 태그 하나만 선택하는 함수products = bestitems.select('ul > li')for index, product in enumerate(products): title = product.select_one('a.itemname') price = product.select_one('div.s-price > strong') print (title.get_text(), price.get_text(), title['href']) #문의 내용bestitems = soup.select('div.best-list') ^찾는 값이 1개인 경우에는 무조건 one을 적어야 하는 것일까요?
-
미해결Flutter 초입문 왕초보편
WebView 선언이 안됩니다.
pubspec.yamlmain_screen.dart강의를 따라 진행했는데, 이렇게 빨간 줄이 나오고, WebView도 찾지를 못하는데, 어디서 잘못된걸까요?ㅠㅠ
-
미해결딥러닝 CNN 완벽 가이드 - TFKeras 버전
회귀 문제 해결 시 딥러닝 vs 머신러닝 질문드립니다.
안녕하세요. 권철민 선생님.저는 회사에서 업무 적용을 위해 머신러닝과 딥러닝을 공부하고 있습니다.그동안 딥러닝은 매우 방대한 데이터와 복잡한 차원 연산이 필요한 이미지 처리 등에 활용되고 머신러닝은 비교적 정형화된 데이터의 회귀, 분류 등에 활용되는 것으로 알고 있었습니다.근데 최근 상사로부터 딥러닝을 이용해 데이터를 회귀 분석하라고 요구 받았습니다. 머신러닝과 딥러닝을 혼동하셔서 그렇게 말씀하신 건지는 모르겠습니다만..이에 어떤 경우에는 딥러닝으로, 또는 머신러닝으로 회귀 문제를 푸는 것이 유리한지 두 방법의 장단점을 알고 싶습니다.그리고 만약 딥러닝으로 회귀 문제를 푸는 것이 유리한 경우가 있다면.. 본 강좌에는 CNN 중심으로 설명하고 있는데 타 강의를 참고해야 할까요? ㅠㅠ
-
미해결
npm - i
설치가 안되네요.찾아보니밑에처럼 설치하라했는데 밑에부분도 설치가 안됩니다 ㅠnpm i node-pre-gyp rebuild
-
미해결한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
상태변화 이후 렌더링에 대해서
안녕하세요 🙋♂️-State, 9분 32초즈음State가 변화할 때 마다 그 컴포넌트가 계속 호출되어 새로운 요소(혹은 DOM)를 반환하는 것은 알겠습니다.그러나, 함수가 호출되어, return을 꾸준히 해준다 하더라도,App.js에서, import를 한번만 한다면, 변화 내용은 업데이트 되지 않을 것입니다. 또, index.js에서 변화한 App.js를 다시 import를 해야겠죠즉 State의 변화에 따라서 import도 계속해줘야 업데이트가 반영될 것입니다.우리는 import를 꾸준히 동작하도록 코드를 작성한 적이 없는데 불구하고, 업데이트가 반영되고 있습니다.어떻게 이것이 가능한 건지 궁금합니다.
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
Unable to start assembler. Check your settings.
이 에러가 뜬 경우에는 https://github.com/Dman95/SASM/releases/download/v3.12.1/SASMSetup3121.exe이 버전을 다운로드 받은 후, 세팅에서 에셈블리 옵션을 아래처럼 변경해주시면 됩니다.-g -f win64 $SOURCE$ -l $LSTOUTPUT$ -o $PROGRAM.OBJ$
-
미해결스프링 DB 1편 - 데이터 접근 핵심 원리
DB 락의 원리에 대해 궁금합니다.
학교에서 운영체제 수업들을 때 Mutex랑 Semaphore공부했었는데 그것과 동일한 원리인가요?만약 동일하다면 락이 걸리면 session 2에 해당하는 프로세스는 waiting queue에 들어가게 되는건지 아니면 계속 while loop돌면서 확인하는건지 궁금합니다.
-
해결됨스프링 핵심 원리 - 기본편
@Configuration과 싱글톤 memberRepository1,2 다른값
memberRepository1,2 다른값으로 나와가지고 다른 질문글에 답해주신 것처럼AppConfig에서@Bean public static MemberRepository memberRepository() { return new MemoryMemberRepository(); }static을 빼서 해결은 했는데 static붙고 안붙고 어떤차이 때문에 결과가 다르게 나오는건지 이해가 안돼서 질문드립니다!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-D 다른 풀이 질문입니다.
안녕하세요.아래 코드블럭은 다른 풀이로 푼 코드인데, 이건 통과가 됩니다.근데 문제는 첨부한 링크의 코드는 왜 통과가 안되는지 모르겠습니다 ㅠㅠ나름의(?) 성능향상 빼고는 동일한 코드라고 생각이 드는데 뭐가 문제일까요? 통과#include <bits/stdc++.h> using namespace std; string s; int ret = 1; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); cin >> s; for (int i = 0; i < s.size() / 2; i++) { if (s[s.size() - 1 - i] == s[i]) { ret = 1; } else { ret = 0; break; } } cout << ret << '\n'; return 0; } 에러http://boj.kr/91c918183ef8436187679d76a3e38c96p.s. 백준에서는 s.size()의 타입 관련한 에러라고 뜨는데… 그게 문제라면 둘다 에러가 나야하는거 아닌가 해서요. (vscode에서 컴파일 에러는 안뜹니다.)항상 감사합니다.
-
해결됨[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
로그인 no 로 나오고 파이어베이스 사용자에 데이터가 안 들어옵니다
import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.widget.Button import android.widget.Toast import com.google.firebase.auth.FirebaseAuth import com.google.firebase.auth.ktx.auth import com.google.firebase.ktx.Firebase class MainActivity : AppCompatActivity() { private lateinit var auth: FirebaseAuth override fun onCreate(savedInstanceState: Bundle?) { // Initialize Firebase Auth auth = Firebase.auth // 초기화 super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val joinBtn = findViewById<Button>(R.id.join) joinBtn.setOnClickListener{ auth.createUserWithEmailAndPassword("abc@abc.com", "1234") .addOnCompleteListener(this) { task -> if (task.isSuccessful) { // Sign in success, update UI with the signed-in user's information Toast.makeText(this, "ok", Toast.LENGTH_SHORT).show() } else { // If sign in fails, display a message to the user. Toast.makeText(this, "no", Toast.LENGTH_SHORT).show() } } } } }plugins { id 'com.android.application' id 'org.jetbrains.kotlin.android' id 'com.google.gms.google-services' } android { namespace 'com.suyeon.mysampleapp2' compileSdk 32 defaultConfig { applicationId "com.suyeon.mysampleapp2" minSdk 19 targetSdk 32 versionCode 1 versionName "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } kotlinOptions { jvmTarget = '1.8' } } dependencies { implementation 'androidx.core:core-ktx:1.7.0' implementation 'androidx.appcompat:appcompat:1.4.1' implementation 'com.google.android.material:material:1.5.0' testImplementation 'junit:junit:4.13.2' androidTestImplementation 'androidx.test.ext:junit:1.1.3' androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' implementation platform('com.google.firebase:firebase-bom:31.2.0') implementation 'com.google.firebase:firebase-analytics-ktx' implementation 'com.google.firebase:firebase-auth-ktx' }// Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { google() mavenCentral() } dependencies { classpath 'com.google.gms:google-services:4.3.15' } } plugins { id 'com.android.application' version '7.3.1' apply false id 'com.android.library' version '7.3.1' apply false id 'org.jetbrains.kotlin.android' version '1.7.20' apply false } 안녕하세요 선생님강의 잘 듣고 있습니다!다름 아니라 선생님 코드와 같이 작성해 실행했는데요.가상 디바이스 켜서 회원가입 버튼 누르면 'ok' 나오고 파이어베이스 인증 페이지에 abc@abc.com 관련 데이터가 들어오지 않습니다.로그인 실패한 경우인 no 가 토스트 메시지로 나오고 인증 페이지에서도 아무런 데이터가 나오지 않습니다.몇 번이나 빌드 새로 하고 코드도 비교해봤는데 제가 빼먹은 게 있는 건가요?별 다른 오류가 뜨진 않습니다. 관련 소스 함께 올립니다. 그리고 이전엔 안 그랬는데 오늘 디바이스를 실행하니 갑자기 속도가 굉장히 느려졌습니다.안드로이드 스튜디오말고도 전체적으로 인터넷 로딩 속도 등도 디바이스 실행할 때 느려지는데요. 이와 관련해 개선할 수 있는 방법이 있을까요? 감사합니다.
-
해결됨자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
송아지 찾기 문제
package dfs_and_bfs; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; public class Solution_7 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String positions[] = br.readLine().split(" "); int S = Integer.parseInt(positions[0]); int E = Integer.parseInt(positions[1]); Queue<Integer> queue = new LinkedList<>(); int levels[] = new int[10001]; boolean[] visited = new boolean[10001]; queue.offer(S); levels[S] = 0; visited[S] = true; int[] dis = {1, -1, 5}; while(!queue.isEmpty()) { int pos = queue.poll(); if(pos == E) { System.out.println(levels[pos]); break; }else { for(int i = 0; i < dis.length; i++) { int newPos = pos + dis[i]; if(newPos >=1 && newPos <= 10000 && !visited[newPos]) { queue.add(newPos); levels[newPos] = (levels[pos] + 1); visited[newPos] = true; } } } } } } 혹시 이런 식으로 구현하게 되면 levels 라는 배열이 필요하게 되는데 맞나요? 채점 사이트에서는 맞았다고 나옵니다
-
해결됨곰책으로 쉽게 배우는 최소한의 운영체제론
"가상 메모리 접근 권한" 영상 관련
안녕하세요. 좋은 강의 감사드립니다.이 강의는 개발자님의 유튜브에도 공개되어 있는 것으로 알고 있습니다. 유튜브에 공개되어 있는 강의 영상을 보면 "가상 메모리 접근 권한"이라는 영상이 있습니다. 혹시 의도하신 것이 아니라면 인프런에 올라온 강의에는 해당 영상이 없는 것 같아서 글을 남겨봅니다.감사합니다.