제가 영상 보기 전 혼자 풀어보았는데 function solution(n, arr) { let answer = 0, max_sum = 0; for (let x of arr) { let sum = 0, temp = x; while (temp) { sum += temp % 10; temp = Math.floor(temp / 10); } if (max_sum < sum || (max_sum === sum && answer < x)) { answer = x; max_sum = sum; } } return answer; } let arr = [128, 460, 603, 40, 521, 137, 123]; console.log(solution(7, arr)); 저는 if 문을 (max_sum < sum || (max_sum === sum && answer < x)) 이렇게 하나로 묶어서 썼는데 괜찮을까요 ? 그리고 선생님께서 max를 초기화할때 Number.MIN_SAFE_INTEGER 로 하셨는데 어차피 각자리수의 합이 0보다는 클것이라는 생각이 들어서 저의 경우엔 0으로 초기화 했는데 괜찮을까요?
import java.util.Scanner; public class ScannerEx1 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (true) { System.out.print("당신의 이름을 입력하세요: "); String str= sc.nextLine(); System.out.print("당신의 나이를 입력하세요: "); int Z1= sc.nextInt(); System.out.println("당신의 이름은 "+str+"이고, 나이는"+Z1+"입니다"); } } } 이런 식으로 코드를 짜고 실행하면 처음 할 때는 잘 작동하는데 두 번째부터 재입력 할 때 이름은 입력 안 되고 나이만 입력이 되니까 당신의 이름을 입력하세요: 존 당신의 나이를 입력하세요: 12 당신의 이름은 존이고, 나이는12입니다 당신의 이름을 입력하세요: 당신의 나이를 입력하세요: 234 당신의 이름은 이고, 나이는234입니다 당신의 이름을 입력하세요: 당신의 나이를 입력하세요: 23 당신의 이름은 이고, 나이는23입니다 당신의 이름을 입력하세요: 당신의 나이를 입력하세요: 존존 Exception in thread "main" java.util.InputMismatchException at java.base/java.util.Scanner.throwFor(Scanner.java:947) at java.base/java.util.Scanner.next(Scanner.java:1602) at java.base/java.util.Scanner.nextInt(Scanner.java:2267) at java.base/java.util.Scanner.nextInt(Scanner.java:2221) at day16.ScannerEx1.main(ScannerEx1.java:15) Process finished with exit code 1 이런 식으로 뜨네요 이름입력이 건너 뛰게 되는 이상한 현상이 있는데 어떻게 된 걸까요?
import 가 안됩니다.. import 문을 지우고 다시 해도 된다는 글이 있어서 따라해봤는데 그대로입니다. 캐시비우기 및 재시작 해도 그대로고 gradle rebuild 해도 그대로 원인조차 파악하기 어렵습니다. 도움주십쇼. 깃 링크: git@github.co m:choiinsoochoi/jpa.git
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] localhost:8080/jsp/members/new-form.jsp 경로에서 webapp 밑에 있다는건 어디서 알 수 있는 정보인지 궁금합니다.또한, 그 설정을 개인적으로 설정할 수 있다면 그 방법이 궁금합니다
안녕하세요 제가 강의 보기전에 혼자 풀어봤는데 function solution(s) { let answer = s[0]; let cnt = 1; for (let i = 1; i < s.length; i++) { if (s[i] === s[i - 1]) { cnt++; continue; } if (cnt > 1) { answer += cnt + s[i]; cnt = 1; } else { answer += s[i]; } } return answer; } let str = "KKHSSSSSSSE"; console.log(solution(str)); 저 같은 경우 미리 answer 에 첫번째 글자를 넣어서 시작했고 for 문을 1부터 시작해서 그 전의 값과 비교하는 식으로했는데 이렇게 풀어도되는걸까요?
안녕하세요! 강의 잘 보고 있습니다 ㅎㅎ 다름이 아니라, import * as getters from './getters' 를 했는데 'import ... ='는 TypeScript 파일에서만 사용할 수 있습니다. ts(8002)라며 에러가 나네요 ㅠㅠ 저는 뷰 3를 이용하고 있습니다!
안녕하세요 큰돌선생님.. 해당 문제를 풀었는데 예제 입력 1번과 2번까지는 잘 나오는데 나머지가 틀렸다고해서 질문드립니다. 선생님 코드와 아주 큰 틀에서는 비슷한것 같긴한데, 제 코드가 우선 깔끔하지는 못한것 같습니다. 따로 변환된 좌표를 받아서 원복시키는것이 아닌 flag 변수를 사용하여 원복시키는 코드로 작성하였습니다.. 오래 생각해보았는데 진전이 없어 질문드립니다. 혹시 어떤 부분이 잘못된 로직인가요?? http://boj.kr/468e705a31f141d7aaf8dea5cc6f4dfd
3.0에서 추가된 merge, shuffle_hash, shuffle_replicate_nl hint는 어떤 상황에서 효과적일까요? 문서에서는 아쉽게도 각 힌트가 뭘 수행하는 지와 BROADCAST > MERGE > SHUFFLE_HASH > SHUFFLE_REPLICATE_NL 순서로 힌트 우선순위를 정한다는 것만 적혀있네요. spark optimizer가 어떤 기준으로 join 전략을 택하는지도 알려주시면 좋을 것 같아요.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 선생님. 일단 문제는 동전뒤집기와 같은 원리로 풀긴 했습니다만 지금까지 풀면서 느낀건데 약간 이번에 0,1로 나누는 것처럼 새로운 아이디어를 아에 생각해내지 못하는 것 같습니다. 뒤로 갈수록(문제티어가 올라갈수록) 이런 생각들이 많이 필요한지(?) 궁금합니다. 추가로 제가 작성한 코드에 이런 코멘트가 달렸습니다. 연산자 우선순위 때문에 괄호를 명확히 써달라는거 같은데 무시해도 되는 부분인가요? Main.cc: In function ‘int main()’: Main.cc:45:33: warning: suggest parentheses around ‘+’ inside ‘<<’ [-Wparentheses] 45 | for(i = 0; i < (1 << (X-1)*Y+1); i++) { | ~~~~~~~^~ http://boj.kr/7f52d75051654e338b6b5d369cc55202
#include <iostream> #include <vector> #include <queue> using namespace std; #define ll long long #define endl "\n" void merge(int a, int b); int find(int a); vector<int> parent; vector<int> paths; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int n, m; cin >> n; cin >> m; parent.resize(n + 1); for (int i = 0; i <= n; ++i) { parent[i] = i; } for (int i = 1; i <= n; ++i) { for (int j = 1; j <= n; ++j) { int v; cin >> v; if (v == 1) { merge(i, j); } } } for (int i = 1; i <= n; ++i) { int n; cin >> n; paths.push_back(n); } int prevPath = find(paths[0]); for (int path : paths) { int curPath = find(path); if (curPath != prevPath) { cout << "NO"; return 0; } prevPath = curPath; } cout << "YES"; return 0; } void merge(int a, int b) { a = find(a); b = find(b); if (a != b) parent[b] = a; } int find(int a) { if (a == parent[a]) return a; return parent[a] = find(parent[a]); } 왜맞틀인거같은 느낌이 듭니다. 책에 있는 내용 분석해서 이해는 하였는데 제가 짠 코드가 왜 틀린것인지 모르겠습니다. 의심되는 부분은 처음에 merge하는 for문인거같은데 책처럼 인접리스트를 사용하지 않고 v가 1이라면(i행과 j열이 연결되어 있다면) 그냥 바로 merge하여 병합하였는데 이부분에 예외가 있는것인지 아니면 다른 부분에서 예외가 있는것인지 감이 안 잡히는데 어디가 잘 못된것인지 한번 봐주실 수 있나요? 감사합니다 :)
========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 인텔리제이에서 테스트 코드를 작성하기 위해 @Test를 쓸 때, 자동완성이 나오지 않습니다. 이렇게만 나오고 @Test에 해당하는 것은 나오지 않습니다. build.gradle에 dependencies도 dependencies { implementation 'org.springframework.boot:spring-boot-starter' testImplementation 'org.springframework.boot:spring-boot-starter-test' } 위처럼 설정되어 있습니다. 따로 테스트 코드 위에 import org.junit.jupiter.api.Test; 를 작성하면 오류없이 사용 가능하긴한데 자동으로 할 수 있는 방법은 없을까요?Build and run 과 test 모두 Gradle로 설정되어있고 JAVA 17 을 사용하고 있습니다.
객체 (인스턴스)가 생성되는 영역이 힙 영역이라고 하셨고 메서드 영역에서는 클래스 안에서의 필드 값이 존재한다고 하셨는데 그렇다면 객체 안에서의 멤버 변수들을 저장하는 값은 메서드 영역에서 생성된다는 건가요? 아니면 객체가 생성되는 힙 영역 안에서 객체 멤버 변수 값들도 다 같이 저장이 되는건가요? 헷갈려요..ㅠㅠ