2023. 3. 25. 14:21, 알고리즘/BOJ
여기서 첫번재 cout에 작성한 코드에서 *을 제외하고 프로그램을 실행시킨뒤 입력값을 넣어보면
이런식의 값이 출력된다.
max_element(a,a+9)의 출력값이 0064D490의 값이 나오는 것이다.
cplusplus 사이트에서 max_element를 검색해보면
이렇게 설명을 제시해주는데, 결국 제시해 주는 값은 iterator이다.
https://notepad96.tistory.com/40
이 블로그 글의 설명을 참조해서 생각해보면, 이터레이터를 반환하는데, 그걸 활용해서 인덱스 값을 알아내는 방법에 대해서 설명해놓았다.
여기서의 설명은 vector인데, vector는 결국 연속적으로 할당되어있는 다이나믹 어레이로 생각할 수 있고,
지금 문제에서 다루고 있는 자료구조는 array이니까 같은 형태로 생각해볼수 있을것 같다.
-a+1을 한것을 유심히 살펴보고, 지속적으로 생각해보도록 하자.
결국 컴퓨터상에서 인덱스는 제로베이스 인데, 이 문제가 요구하는 인덱스의 순서는 1베이스이기 때문에, 그 간격을 맞추어주기 위해서 +1을 시행한것으로 보인다.
문제가 요구하는 순서가 제로베이스인지, 1베이스인지 정확히 파악하고 문제를 해결하는데 기준으로 삼도록 하자.
'알고리즘 > BOJ' 카테고리의 다른 글
c++에서 소수의 자릿수 표현에 대한 방법. (0) | 2023.04.08 |
---|---|
0x03강 배열. 출력문 맨 마지막에 \n을 하지 않아서 틀린 문제. 그리고 그 풀이에 유용한 c++문접까지. (0) | 2023.04.06 |
0x02강 기초코드작성요령2. for문 두개에 하나의 int j로 컨트롤할때 주의사항. (0) | 2023.03.24 |
0x02강 기초코드작성요령2. 원소들을 뒤집을때, STL reverse 함수를 사용할 수 있다. (0) | 2023.03.24 |
0x02강-기초코드작성요령2. 비트연산자 &를 활용한 홀수의 판정 표기법. (0) | 2023.03.22 |
Comments, Trackbacks