2017-12-10 20 views
-4
내가 20 행과 4 열 요소와 벡터를 정의 할

은 '빈 ... 내 코드의 일부가 아래 서면입니다 처음에이가변 크기의 벡터 인 2 차원 벡터를 정의하는 방법은 무엇입니까?

result={ 
    {1,2,3},{5,4},{1},{10,15,16} 
    {5},{1,2},{1,2,3},{1,4,5,6} 
    ... 

} 

결과와 같은 가변 크기와 벡터이다 조건이 참이면 결과 '업데이트는

for(int i=0;i<20;i++){ 

    hash_1=hash_images[i]; 

    for(int j=i+1;j<20;j++){ 

     hash_2=hash_images[j]; 
     dis=hammingDist(hash_1.c_str(),hash_2.c_str()); 

     for(int t=0;t<4;t++){ 

      if (dis<=t){ 
        ? result[i][t].push_back(somthing); 
      } 
     } 
    } 
} 
+0

현재 가지고있는 코드에 어떤 문제가 있습니까? – user0042

+0

http://idownvotedbecau.se/beingunresponsive – user0042

+0

STD : 벡터 <표준 : 벡터 > VEC = {{1, 2, 3} {2, 3}, { 2, 7, 9} }; – Yashas

답변

0

은 다음과 같은 3 차원 벡터 정의 :에 다음

vector<vector<vector<sth>>> S; 
S.resize(20); 
for (i=0 to 19) 
    S[i].resize(4); 

당신의 메인 루프를 사용하면 계산 후 각 값의 3 차원을 조정할 수 있습니다.

for(j=0 to 19) 
    for(m=0 to 3){ 
     //your calculation 
     k=S[j][m].size(); 
     S[j][m].resize(k+1); 
     S[j][m][k]=value; 
    } 
+0

과 같아야합니다. 당신은 매우 영리한 사람입니다. –