묻고 답해요
130만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 핵심 원리 - 기본편
DI 컨테이너를 의미하는 오브젝트 팩토리와 ObjectFactory는 다른 건가요?
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]pdf로 복습하던 중 질문 있습니다.3. 스프링 핵심 원리 이해2 - 객체 지향 원리 적용.pdf의 24페이지에 다음과 같은 내용이 있습니다. "IoC 컨테이너, DI 컨테이너는 어샘블러, 오브젝트 팩토리 등으로 불리기도 한다." 그리고9. 빈 스코프.pdf의 16페이지에 다음과 같은 내용이 있습니다. "지정한 빈을 컨테이너에서 대신 찾아주는 DL 서비스를 제공하는 것이 바로 ObjectProvider이다. 참고로 과거에는 ObjectFactory가 있었는데, 여기에 편의 기능을 추가해서 ObjectProvider가 만들어졌다." 첫 번째의 경우엔 오브젝트 팩토리가 DI 컨테이너를 의미하고,두 번째의 경우엔 ObjectFactory는 DI 컨테이너가 아니라, DL 서비스를 제공하는 것을 의미하는 거로 이해했습니다. 그럼 여기서의 '오브젝트 팩토리'와 'ObjectFactory'는 다른 것을 의미하고 있는 거로 느껴지는데 맞나요? 둘 다 오브젝트 팩토리라서.. 이름만 같을 뿐 전혀 다른 개념이 맞는지 궁금합니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
h2 데이터베이스 설정시 url관련 질문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]강의 내용을 보면이렇게 url 자리에 mv.db 파일을 설치할 곳을 쓰라고 하셨는데 이 자리에 스프링 프로젝트 파일의 위치를 넣으면 되는 건가요 jpashop이 프로젝트 이름이어서 여쭤봅니다.저가 c드라이브에 인텔리제이 프로젝트들을 저장해서 jdbc url 자리에 "jdbc:h2:(c드라이브내 프로젝트 파일 경로)" 를 적고 url이 application.yaml에 있는 spring:data:source:rul과 동일해야 한다 해서 이 자리에도 같은 경로를 집어넣었습니다. 그런데 계속 오류가 납니다. 혹시 어디가 잘못된 것인지 알 수 있을까요
-
미해결CAN 통신 - 자동차 신입이 알아야 할 모든 것
Aurix 시리즈의 MCMCAN에 대한 질문
안녕하세요. 블로그에 MCMCAN에 대한 글(https://newbie-developer.tistory.com/331)을 보고 있던 도중에, 이전 강의 수강한 강사님임을 알아차리고 반가운 마음에 연관된 질문하나를 하려 합니다. 현재 Aurix MCMCAN을 구현하려는데, 인피니언에서 제공하는 예제인루프백 테스트는 통과했습니다만, Tx 핀에서 신호를 못 내보내는 것은 SW 문제일 가능성이 높은가요? 캔 트랜시버와 연결된 상태에서 TX 부분을 스코프 찍어봐도 데이터 나가는 펄스가 현재는 보이지 않습니다. IfxCan_Can_sendMessage 의 함수 메세지를 보내도 보내지 못합니다.혹시 가능성이 높아보이는 원인중 추측되는게 있으신지 문의드립니다.아니면 참조할만한 사이트를 알려주시면 공부해보겠습니다. 감사합니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
연관관계 설정 시에 ID값을 알고 있다면
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 간단한 내용이지만 조금 고민이 있어서 질문드립니다. 요청을 통해서 받은 데이터를 통해서나 로직상에서 연관관계에 필요한 Entity의 id값을 알고 있는 경우 필요한 Entity를 DB에서 조회하는 과정 없이 id값만 초기화된 Entity를 생성하여 주입하는 방식이 가능한 것으로 알고 있습니다. 이 때, 그렇게 주입된 Entity는 persist된 상태가 아니라는 점인데요. ( cascade 옵션이 적용 안 되었다는 가정 ) 이런 경우에 두 가지 경우의 수를 고려하였습니다.첫 번째는 연관관계 Entity가 연관관계 설정 외에는 사용될 일이 없는 로직의 경우이고두 번째는 연관관계에 필요한 Entity가 이후에도 여러 로직에서 사용되는 경우입니다. 두 번째의 경우에는 사실 고민할 것 없이 ID를 이용해 Entity를 생성하는 것이 아닌 SELECT를 통해서 Entity를 조회하여 사용하는 것이 좋은 방법이고 EntityGraph를 맞추는 면에서도 당연히 해주어야 하는 것으로 사료됩니다.하지만 첫 번째의 경우 굳이 Entity를 ID값을 통해 조회하는 과정이 필요한 지에 대한 의문입니다. 저런 단순한 로직의 경우 굳이 DB와의 정합성을 위해 조회 및 연관관계 편의메소드 등을 이용해서 EntityGraph를 맞춰줄 필요가 있나 싶었습니다.이런 경우에서 실제 현업에서는 어떤식으로 처리하는 지 궁금합니다. 저렇게 각 상황에 따라 효율을 따져서 다르게 처리하는 지 아니면 ID를 통해 데이터를 조회하는 것은 크게 성능상 문제가 되지 않으니 불필요하더라도 로직의 통일성이나 혹시 모를 사이드 이펙트를 대비해서 조회한 뒤 연관관계 편의 메소드를 통해 EntityGraph까지 맞춰 주는 지 궁금합니다..!저는 불필요하다고 생각하여 굳이 Entity그래프를 맞춰줄 필요가 없는 경우는 그런 과정을 생략하며 프로젝트를 하고 있었는데, 완성하고 보니 EntityGraph를 맞춰 주는 로직이 단 하나도 없는 걸 알게 되었습니다.아무래도 복잡한 비즈니스 로직이 없어서 그럴 수도 있겠다는 생각은 들었지만 너무 심한 것 같아 제가 JPA를 제대로 쓰고 있는 게 맞나 싶어 질문드립니다..ㅠㅠ
-
미해결따라하며 배우는 HTML, CSS
유튜브 사이드바 생성할때 bottom 0
코드에서는Position : fixed;Left : 0;Bottom : 0; 으로 주셨는데, 저는 이렇게 하니까 사이드바가 아래에 붙어요.Bottom 0을 삭제하니까 강의처럼 위쪽에 붙어있어요.선생님 강의에서는 bottom 0을 줬는데 어떻게 위에 있는거죠? 그리고 색상코드는 6자리 알파벳, 숫자로만 나타낸다고 알고 있는데 212121FF는 뭔가요? 그냥 212121과 다른 점이 뭔지 궁금합니다.
-
미해결[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지
람다 접근 에러
너무 자주 잘문드려 죄송합니다...2023-11-23T13:10:50.588Z 50b59392-754b-4b9c-90a1-ed48e95f40e1 ERROR AccessDenied: Access Denied at throwDefaultError (/var/task/node_modules/@smithy/smithy-client/dist-cjs/default-error-handler.js:8:22) at /var/task/node_modules/@smithy/smithy-client/dist-cjs/default-error-handler.js:18:39 at de_GetObjectCommandError (/var/task/node_modules/@aws-sdk/client-s3/dist-cjs/protocols/Aws_restXml.js:4330:20) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async /var/task/node_modules/@smithy/middleware-serde/dist-cjs/deserializerMiddleware.js:7:24 at async /var/task/node_modules/@aws-sdk/middleware-signing/dist-cjs/awsAuthMiddleware.js:14:20 at async /var/task/node_modules/@smithy/middleware-retry/dist-cjs/retryMiddleware.js:27:46 at async /var/task/node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/flexibleChecksumsMiddleware.js:63:20 at async /var/task/node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/region-redirect-endpoint-middleware.js:14:24 at async /var/task/node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/region-redirect-middleware.js:9:20 { '$fault': 'client', '$metadata': { httpStatusCode: 403, requestId: 'S3JVT25F4WT5TH9H', extendedRequestId: 'i2FSNxeCIH5smb0tHWggtUQ7WWZIvDurOoQ4UGIZ1eVgwIPsJwrNC85V8Oh2XHVpCaFyITlXaaM=', cfId: undefined, attempts: 1, totalRetryDelay: 0 }, Code: 'AccessDenied', RequestId: 'S3JVT25F4WT5TH9H', HostId: 'i2FSNxeCIH5smb0tHWggtUQ7WWZIvDurOoQ4UGIZ1eVgwIPsJwrNC85V8Oh2XHVpCaFyITlXaaM='}이러한 에러가 발생했습니다. 찾아보니깐 s3 버컷 정책과 관련이 있는 것 같습니다.{ "Version": "2012-10-17", "Statement": [ { "Sid": "AddPerm", "Effect": "Allow", "Principal": "*", "Action": [ "s3:GetObject", "s3:PutObject" ], "Resource": "arn:aws:s3:::whatsup1/*" } ]}이게 저의 s3 버캣 정책입니다.그리고 아래는 aws-upload의 index.js입니다 //이미지 리사이징 라이브러리 const sharp = require("sharp"); const { S3Client, GetObjectCommand, PutObjectCommand, } = require("@aws-sdk/client-s3"); //함수가 aws 람다에서 돌아가기 때문에 스크릿키랑 아이디를 자동으로 넣어준다 = > 아무것도 넣어줄 필요 x const s3 = new S3Client(); //람다는 3개의 매개변수를 제공하고 이 함수를 호출해준다. exports.handler = async (event, context, callback) => { const Bucket = event.Records[0].s3.bucket.name; const Key = decodeURIComponent(event.Records[0].s3.object.key); //original/리버풀.png const filename = Key.split("/").at(-1); const ext = Key.split(".").at(-1).toLowerCase(); const requiredFormat = ext === "jpg" ? "jpeg" : ext; console.log("name", filename, "ext", ext); try { const getObject = await s3.send(new GetObjectCommand({ Bucket, Key })); const buffers = []; for await (const data of getObject.Body) { buffers.push(data); } const imageBuffer = Buffer.concat(buffers); console.log("original", getObject); const resizedImage = await sharp(imageBuffer) .resize(200, 200, { fit: "inside" }) .toFormat(requiredFormat) .toBuffer(); await s3.send( new PutObjectCommand({ Bucket, Key: `thumb/${filename}`, Body: resizedImage, }) ); console.log("put", resizedImage.length); return callback(null, `thumb/${filename}`); } catch (error) { console.error(error); return callback(error); } }; 구글링 해보니깐 s3정책들이 비슷하면서 약간씩 다르던데 뭐가 맞는건지 잘 모르겠습니다..
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
실제시험
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요베이스라인 - 레이블 - 원핫 실제 시험에서 저렇게 하기에는 복잡해서 실수를 할 거 같아서 익숙한 레이블만 사용하려고 하는데 괜찮을까요?
-
해결됨
파이썬 나도코딩 FPS
안녕하세요, 나도코딩님의 영상을 보고 따라하던 중 이해가 안되는 부분이 있어 여쭤봅니다.FPS에 대한 부분인데요. 제가 코딩한 코드는 길지만 대충 설명하자면 방향키로 캐릭터를 움직이는 코드입니다. 여기서 제가 여쭤보고 싶은거는요, dt = clock.tick(60)이 문장인데요. 여기서 clock.tick(60)를 clock.tick(10)이라던지 숫자를 많이 낮추면 화면에서 캐릭터가 뚝뚝 끊기듯 움직입니다. 물론 저도 게임을 해봐서 fps가 떨어지면 화면이 끊기듯 나오는 것을 압니다. 하지만 이 캐릭터는 fps가 떨어지면 지정된 장소들에서 지정된 장소들로 밖에 못 가더라고요. 무슨 뜻이냐면, fps가 높을때는 방향키 한 번에 +1 만큼 상하좌우를 끊기지 않고 잘 갔다면, fps가 낮을때는 방향키로 +3만큼 가야 움직입니다 그리고 또 +3만큼... 또 +3..제가 설명을 잘했는지 모르겠네요 ㅠㅠ
-
미해결초보자도 만들 수 있는 스크롤 인터렉션. 1편 자바스크립트
날짜 카운트를 활용하여 시간으로 적용해볼 수 있나요?
안녕하세요 선생님,같은 방식으로 날짜 대신 오늘 시간까지 "시간"이 롤링되며 카운팅되는 효과로 적용해볼 수 있을까요??
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
12장 동기화 강의
코드는 스레드 객체 에서 java.lang만 빼고 똑같은데 결과가 왜 10이 넘는 숫자가 나오나요? java.lang에 영향인가요
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
12장 Runnable 강의
스레드 객체 만들때 강의에서와 달리java.lang이 있어야 오류가 안 나던데 왜 이런 건가요
-
해결됨[리뉴얼] React로 NodeBird SNS 만들기
미리보기가 보이지 않습니다
//app.js app.use('/', express.static(path.join(__dirname, 'uploads'))); //PostForm.js import { Button, Form, Input } from 'antd'; import React, { useCallback, useEffect, useRef } from 'react'; import { useDispatch, useSelector } from 'react-redux'; import styled from 'styled-components'; import useInput from '../hooks/useInput'; import { ADD_POST_REQUEST, REMOVE_IMAGE, UPLOAD_IMAGES_REQUEST, addPost, } from '../reducers/post'; const FormWrapper = styled(Form)` margin: 10px 0 20px; `; const ButtonStyle = styled(Button)` float: 'right'; `; const PostForm = () => { const { imagePaths, addPostLoading, addPostDone } = useSelector( (state) => state.post ); const dispatch = useDispatch(); const imageInput = useRef(); const [text, onChangeText, setText] = useInput(''); useEffect(() => { if (addPostDone) { setText(''); } }, [addPostDone]); const onSubmitForm = useCallback(() => { if (!text || !text.trim()) { return alert('게시글을 작성하세요.'); } const formData = new FormData(); imagePaths.forEach((p) => { formData.append('image', p); }); formData.append('content', text); return dispatch({ type: ADD_POST_REQUEST, data: formData, }); }, [text, imagePaths]); const onClickImageUpload = useCallback(() => { imageInput.current.click(); }, [imageInput.current]); const onChangeImages = useCallback((e) => { console.log('images', e.target.files); //배열모양을 띄는 객체 const imageFormData = new FormData(); [].forEach.call(e.target.files, (f) => { imageFormData.append('image', f); }); dispatch({ type: UPLOAD_IMAGES_REQUEST, data: imageFormData, }); }, []); const onRemoveImage = useCallback( (index) => () => { dispatch({ type: REMOVE_IMAGE, data: index, }); }, [] ); return ( <FormWrapper encType='multipart/form-data' onFinish={onSubmitForm}> <Input.TextArea value={text} onChange={onChangeText} maxLength={140} placeholder='어떤 신기한 일이 있었나요?' /> <div> <input onChange={onChangeImages} type='file' name='image' hidden multiple ref={imageInput} /> <Button onClick={onClickImageUpload}>이미지 업로드</Button> <ButtonStyle type='primary' htmlType='submit'> Twit </ButtonStyle> </div> <div> {imagePaths.map((item, i) => ( <div key={item} style={{ display: 'inline-block' }}> <img src={`http://localhost:3065/${item}`} style={{ width: '200px' }} alt={item} /> <div> <Button onClick={onRemoveImage(i)}>제거</Button> </div> </div> ))} </div> </FormWrapper> ); }; export default PostForm; //post.js const multer = require('multer'); const path = require('path'); const fs = require('fs'); const { Post, Image, Comment, User } = require('../models'); const { isLoggedIn } = require('./middlewares'); const router = express.Router(); try { fs.accessSync('uploads'); } catch (error) { console.log('uploads 폴더가 없으므로 생성합니다.'); fs.mkdirSync('uploads'); } //이미지나 동영상처리는 웬만하면 프론트에서 클라우드로 바로 올리는게 좋다. const upload = multer({ storage: multer.diskStorage({ destination(req, file, done) { done(null, 'uploads'); }, //배포때는 s3로 , 개발에는 드라이브에 filename(req, file, done) { const ext = path.extname(file.originalname); //확장자 추출 const basename = path.basename(file.originalname, ext); done(null, basename + '_' + new Date().getTime() + ext); //이나당151817842.png }, }), limits: { fileSize: 20 * 1024 * 1024 }, //20MB }); router.post('/', isLoggedIn, upload.none(), async (req, res, next) => { // POST /post try { const post = await Post.create({ content: req.body.content, UserId: req.user.id, }); if (req.body.image) { if (Array.isArray(req.body.image)) { const images = await Promise.all( req.body.image.map((image) => Image.create({ src: image })) ); await post.addImages(images); } else { const image = await Image.create({ src: req.body.image }); await post.addImages(image); } } console.log('POST', post); const fullPost = await Post.findOne({ where: post.id, include: [ { model: Image, }, { model: Comment, include: [{ model: User, attributes: ['id', 'nickname'] }], }, { model: User, //작성자 attributes: ['id', 'nickname'], }, { model: User, //좋아요 누른 사람 as: 'Likers', attributes: ['id'], }, ], }); res.status(201).json(fullPost); } catch (error) { console.error(error); next(error); } }); router.post( '/images', isLoggedIn, upload.array('image'), async (req, res, next) => { //POST /post/images try { console.log(req.files); res.json(req.files.map((v) => v.filename)); } catch (error) { console.error(error); next(error); } } ); 안녕하세요 제로초님! 질문이 있습니다.. 파일은 제대로 올라가서 uploads 폴더안에 있는데 화면에서 이미지를 가져오지 못하고있습니다.. 프론트-백 api통신도 잘 되는데, 왜 개발자도구-네트워크에서 이미지를 가져올 수 없는지 이유를 모르겠습니다 ㅠㅠ
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
회원 서비스 개발, 테스트 시 throw new IllegalStateException(); 코드 작성 오류
1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (아니오)[질문 내용]회원 서비스 개발 강의와 그 다음 강의에서 throw new IllegalStateException("이미 존재하는 회원입니다.") 이 코드를 작성하면 저는 try catch 로 감싸라고 오류가 나옵니다. 왜 선생님은 오류가 나지 않으시나요?
-
해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
예시 코드들의 운영체제를 유닉스나 리눅스로 하는 이유
안녕하세요! 비전공자로 이쪽에 뛰어들어 덕분에 쉽게 공부를 해 가고 있습니다. 책을 읽다가 나오는 깃허브의 실습 예제들이 유닉스 기반 코드들이라 윈도우에서 동작하지 않아 따로 찾아가며 하고 있습니다 혹시 윈도우가 아닌 다른 운영체제로 실습하는 이유가 있을까요? 공부를 할 때는 유닉스나 리눅스 운영체제를 설치하여 실습하는 게 더 좋거나 하는 이유일까요?
-
해결됨디지털포렌식 입문자를 위한 디지털포렌식 전문가 2급 실기 시험대비 강의(Encase/Autopsy)
리틀엔디안 빅엔디안 변환 관련
강사님 추가로 리틀엔디안 > 빅엔디안 변환 과정에서 궁금한 점이 있습니다!오톱시교재 기준 예시로 99페이지를 보면, '섹터당 용량'의 리틀엔디안 00 02는 빅엔디안 200(십진수 512)으로 변환하셨고,'총 섹터수'의 리틀엔디안 00 20 02 00은 빅엔디안 03 20 00(십진수 204,800개)로 변환하신 부분을 확인하였습니다.차이점으로 빅엔디안 기준, 마지막 값이 00이냐 0이냐 차이인데, 이에따라 값도 달라지는 것으로 알고 있습니다.어느 상황에서 00, 0 구분하여 사용하는지가 궁금합니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
em.persist 오류
저만 em에 빨간불이 들어오는데 왜 이러는걸까요,,
-
미해결입문자를 위한 코딩테스트 핵심(이론과 문제풀이) [Python]
강의 3-6 두수의 합(해시) 질문
강의 듣기전에 이렇게 풀어본 코드인데요.Counter로 미리 key,value를 채워두는 것 자체가 데이터최적화도 안되고 접근방법이 조금 엇나갔다는 건 알겠습니다. 그래서 이미 빈도수를 모두 주었기 때문에 (target-i != i)라는 조건이 추가로 생긴 것 같은데, if문에서 저런식으로 두가지 조건을 묶는 방식은 나쁜건가요? 공부를 시작하지 많이 안됐는데 뭔가 저런식으로 조건이 생기면 기분이 찝찝합니다.from collections import Counter def solution(nums,target): answer = [0]*2 nH = Counter(nums); for i in nums: if (target-i in nH) & (target-i != i): answer = sorted([i,target-i]) return answer return answer
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part2: 게임 수학과 DirectX12
애니메이션 빌드 오류 질문드립니다.
애니메이션 솔루션 파일을 컴파일 할 때 아래와 같은 오류가 출력됩니다 이유가 궁금합니다.libfbxsdk-md.lib 는 경로와 추가 종속성 까지 처리가 되어있는데도 파일을 열 수 없다고 출력됩니다. error LNK2038: 'RuntimeLibrary'에 대해 불일치가 검색되었습니다. 'MTd_StaticDebug' 값이 'MDd_DynamicDebug'(Timer.obj에 위치) 값과 일치하지 않습니다. fatal error LNK1104: 'FBX\releaselibfbxsdk-md.lib' 파일을 열 수 없습니다.
-
해결됨자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
채점 오류
import java.io.*; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; public class Main { public static int solution(int[] arr, int K) { int max = 0; Queue<Integer> zeroPoint = new LinkedList<>(); int lp = 0, length = 0; for (int rp = 0; rp < arr.length; rp++) { if (arr[rp] == 0) { zeroPoint.offer(rp); // 0이 꽉 찼을 경우 if (zeroPoint.size() > K) { length = rp - lp; max = Math.max(length, max); Integer poll = zeroPoint.poll(); lp = poll + 1; } } } return max; } public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); int N = Integer.parseInt(st.nextToken()); int K = Integer.parseInt(st.nextToken()); int[] arr = new int[N]; StringTokenizer st2 = new StringTokenizer(br.readLine()); for (int i = 0; i < N; i++) { arr[i] = Integer.parseInt(st2.nextToken()); } System.out.print(solution(arr, K)); } } 6. 최대 길이 연속 부분수열파트에서 이 코드가 정답이라고 나옵니다. 테스트 케이스가 부족해서 모든 문제에서 이런 현상이 발생하는건지, 이 문제에만 오류가 있는건지 궁금합니다. 반례 테스트 케이스 : 14 21 1 0 0 1 1 0 1 1 0 0 1 1 1 기댓값 : 7출력값 : 6
-
미해결[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지
람다 에러
stack": [ "Error: ", "Something went wrong installing the \"sharp\" module", "", "Cannot find module '../build/Release/sharp-linux-arm64v8.node'"이렇게 에러가 발생했는데 람다에서 함수 생성시 선택사항에 보면아키텍쳐 선택할때 제로초님은 기본적으로 선택되어있는 x86을 선택하셨고 저는 맥북에어 m2를 사용해서 arm64를 선택했는데 이거 때문에 에러가 난걸까요? 그리고 제로초님이 강의 만드실때는 node 18버전이 최신버전이였는데 지금은 20까지 나와서 20으로 했는데 이것도 문제가 될까요?