1-C질문입니다!
412
23 asked
안녕하세요 강사님!
http://boj.kr/f2b4f302a918471c9cff405182b5137f
여기에서 14행~17행에 관해 각 행에 대해서 질문이 있습니다.
14행은 cnt[j]를 초기화 하였고, 그 값을 선언하지 않았으니 cnt[j]의 값은 저절로 0이 되는것입니까?
15행부터 17행의 값들을 더하는 함수를 선언하지 않고 20행처럼 ret만을 출력해도 A,B,C의 값이 더해지는 이유가 += 기호때문이 맞습니까?
14행,15행,16행- if, 17행- else로 하지 않고 14행,15행- if, 16행,17행- else if로 하신 특별한 이유가 있나요?
8행에서 문제의 조건인 1<=C<=B<=A<=100을 고려하지 않고 단순하게 cin >> A >> B >> C를 해도 되는 이유가 사용자가 입력하기 때문인 단순한 이유인가요?
?
Answer 2
1
안녕하세요 1209님 ㅎㅎ
14행은 cnt[j]를 초기화 하였고, 그 값을 선언하지 않았으니 cnt[j]의 값은 저절로 0이 되는것입니까?
>> 전역변수로 선언했으니 0으로 초기화 됩니다.
15행부터 17행의 값들을 더하는 함수를 선언하지 않고 20행처럼 ret만을 출력해도 A,B,C의 값이 더해지는 이유가 += 기호때문이 맞습니까?
>> 더하는 것은 += 기호로 합니다.
14행,15행,16행- if, 17행- else로 하지 않고 14행,15행- if, 16행,17행- else if로 하신 특별한 이유가 있나요?
if, if, if로 해도 됩니다. 특별한 이유는 없습니다.
8행에서 문제의 조건인 1<=C<=B<=A<=100을 고려하지 않고 단순하게 cin >> A >> B >> C를 해도 되는 이유가 사용자가 입력하기 때문인 단순한 이유인가요?
>> 문제의 범위가 그렇게 주어지기 때문에 범위를 입력 단계에서는 고려하지 않아도 됩니다.
if(cnt[j]){
else if(cnt[j] == 1) ret += A;
>> 이건 잘못된 코드인 것같은데요. if >> 안에 if문이 들어가야 합니다.
예를 들어
if(cnt[j]){
if(cnt[j] == 1) ret += A;
이렇게 들어가야 합니다. cnt[j]가 있을 때!! 해당 부분을 확인한다라는 의미니까요.
감사합니다.
0
추가적으로 if, else if, else의 사용법에서 if와 else if에는 조건이 나오고, else에는 조건이 안나와도 되는 걸로 알고있는데, 14행을 if, 15~17행을 else if로 바꾸면 실행이 안되는 이유가 무엇일까요?
if(cnt[j]){
else if(cnt[j] == 1) ret += A;
else if(cnt[j] == 2) ret += 2 * B;
else if(cnt[j] == 3) ret += 3 * C;
}
}
1-E질문입니다!
0
509
2
3-L 틀린 부분 피드백 부탁드립니다.
0
811
2
1-A문제 순열재귀함수 질문입니다.
0
376
1
1-A 일곱난쟁이문제입니다
0
451
1
문제 풀 때 방향성에 대해
0
793
1
맥에서 vs code로 실행 관련 질문입니다
0
515
1
17071번 메모리 초과
0
381
1
2-B BFS 시간초과질문
0
623
2
1-O 13번 라인
0
435
1
6-J 놀이공원 문제 질문
0
376
1
구현관련 질문
0
479
1
강의 교안
0
313
1
실력을 더 올리고나서 강의를 보는 것이 맞을까요?
0
541
1
안녕하세요! 재귀함수에 관해서 질문드립니다
0
531
1
1-K
0
468
2
3-G번 질문있습니다.
1
464
3
3-C 실행 시간 질문드립니다.
0
489
1
4-A 문제 풀이 질문있습니다.
0
586
2
비트마스킹 연산자 "1의 보수" 영문 표기법
0
430
1
격자탐색 문제에서 BFS 시간복잡도 질문드립니다.
0
329
1
3-O go 함수 질문 드립니다.
1
437
2
4-A 출력 질문
0
299
1
1주차 1-O 질문드립니다
0
250
1
2-S (1325번 - 효율적인 해킹) 문제 질문 드립니다.
0
505
1

