4-A_19942 인덱스 질문
http://boj.kr/40440de5cbbb48f59125df1e7e30c453
질문 3개가 있습니다.
1.
모든 경우의 수를 찾는 아래의 코드에서 i=0이 아닌 1부터 시작하는 이유는 식재료를 아무것도 고르지 않는 경우의 수는 없기 때문인가요?(최소 1개 이상 식재료를 골라야 하기 때문인가요?) 그러면 그냥 0부터 시작해도 어차피 결과에 영향을 주지는 않으니 그냥 0부터 시작해도 문제는 없겠죠?
for (int i=1; i< (1<<n); i++)
map은 key-value 쌍으로 알고 있습니다. 그렇다면 아래 코드에서 ret_v의 형태는 (key, value)쌍 으로 (최소 ret 비용, {{1,2,3}, {2,4,5}})이런식으로 들어가 있는건가요?
map<int, vector<vector<int>>> ret_v;
...
if(b>=mp && c>=mf && d>=ms && e>=mv){
if(ret>=sum){
ret=sum;
ret_v[ret].push_back(v)
3.처음에 key를 생성할때 insert로 집어 넣어야하는걸로 알고 있는데 그러면 ret_v[ret].push_back(v)말고 ret_v.insert({ret, {v});이런식으로 넣어도 될까요?
답변 1
1
안녕하세요 효민님 ㅎㅎ
모든 경우의 수를 찾는 아래의 코드에서 i=0이 아닌 1부터 시작하는 이유는 식재료를 아무것도 고르지 않는 경우의 수는 없기 때문인가요?(최소 1개 이상 식재료를 골라야 하기 때문인가요?) 그러면 그냥 0부터 시작해도 어차피 결과에 영향을 주지는 않으니 그냥 0부터 시작해도 문제는 없겠죠?
>> 네 맞습니다.
(최소 ret 비용, {{1,2,3}, {2,4,5}})이런식으로 들어가 있는건가요?
>> 네 맞습니다.
처음에 key를 생성할때 insert로 집어 넣어야하는걸로 알고 있는데 그러면 ret_v[ret].push_back(v)말고 ret_v.insert({ret, {v});이런식으로 넣어도 될까요?
>> 네 맞습니다.
방법은 두가지입니다. insert를 하거나 바로 넣어도 됩니다.
예를 들어 이렇게 할 수 있습니다.
#include<bits/stdc++.h>
using namespace std;
int main(){
map<int, int> mp;
mp.insert({1, 1});
mp[2] = 1;
for(auto it : mp){
cout << it.first << "\n";
}
return 0;
}
또 질문 있으시면 언제든지 질문 부탁드립니다.
좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)
감사합니다.
강사 큰돌 올림.
코딩살구클럽 가입부탁드립니다
0
15
2
코딩살구클럽 가입 요청 확인부탁드립니다
0
19
2
5-S 테스트 케이스 질문
0
29
2
코살 문제풀이 환경
0
45
2
2 - T 오큰수 문제가 있는 것 같습니다.
0
41
1
추천 추가문제들
0
41
2
프로그래머스 코테 환경 관련해서 질문드립니다.
0
42
2
해당 문제에 대한 채점이 코딩살구클럽에서 올바르게 처리되지 않습니다.
0
39
2
균형 이진 트리 설명 시 높이 숫자
0
29
2
4-H 질문드립니다.
0
35
2
1-K 질문드립니다.
0
41
2
대기업 인적성 시험 질문
0
41
2
4-C 질문드립니다
0
41
2
[수학숙제 / BOJ 2870] 채점 서버 오작동
0
37
1
코테 준비 질문
0
50
1
살구클럽가입 요청드려요
0
38
2
1-I 문제 질문
0
39
2
코딩살구클럽 가입
0
57
2
AI 코딩 도구 사용 시 학습 방법 조언
0
51
2
코딩살구클럽 오류
0
61
2
코살클 [3-F 괄호 추가하기] 프라이빗 9번 제보
0
46
1
코딩살구클럽 테스트 케이스 오류 제보
0
52
2
삼성 코딩테스트
0
61
2
틀린 이유를 못찾겠습니다
0
47
2





