인프런 커뮤니티 질문&답변
1-O % 연산 질문 있습니다.
해결된 질문
작성
·
335
5
해당 문제에서 n으로 나눈 나머지를 구해주는 이유가 뭔가요?
값이 계속 커지기 때문에 overflow 방지로 해주는 것 같긴 한데
어째서 % 연산해도 값을 구할 때 영향이 없는지 궁금합니다.
그리고 1주차 문제를 풀면서 몇몇 문제들은 혼자 힘으로 풀 수 없었는데, 계속해서 2주차…. 3주차…. 쭉 진행해도 될까요?
아니면 기본 문제를 더 풀고 넘어가야 할까요?
좋게 올려주신 풀이를 들어도 이해에 시간이 오래 걸리는 경우가 있어서 좀 걱정되네요..
답변 1
9
안녕하세요. 찬비님
해당 문제에서 n으로 나눈 나머지를 구해주는 이유가 뭔가요?
값이 계속 커지기 때문에 overflow 방지로 해주는 것 같긴 한데
어째서 % 연산해도 값을 구할 때 영향이 없는지 궁금합니다.
>> 이부분은 교안에 있는데요. (a * b) % c = a % c * b % c 라는 성질때문에 이렇게 해도 됩니다. 만약에 이부분에 대한 증명을 원하신다면 이는 정수론의 "모듈러연산" 부분을 보시면 됩니다.
그리고 1주차 문제를 풀면서 몇몇 문제들은 혼자 힘으로 풀 수 없었는데, 계속해서 2주차…. 3주차…. 쭉 진행해도 될까요?
아니면 기본 문제를 더 풀고 넘어가야 할까요?
>> 다시 푸세요. 그리고 먼저... 교안을 외웠나 확인해보고 어떠한 연산이나 함수 등을 구축할 때 스스로 보지 않고 외워서할 수 있나 확인해보세요. 그리고 이해가 잘안간다면 손코딩을 해보세요. 끈기있게 하시면 1주차를 완벽히 할 수 있고 그리고 나서 2주차 3주차.. 쭉쭉 할 수 있을 겁니다.
좋게 올려주신 풀이를 들어도 이해에 시간이 오래 걸리는 경우가 있어서 좀 걱정되네요..
>> 원래 처음에는 시간이 많이 걸립니다. 평균적으로 처음 시작할 때는 2 ~ 8시간정도 소모하는데 꾸준히 하다보면 이 시간은 점차 줄어듭니다. 꾸준히 계속해서 알고리즘을 생각하시면 될겁니다. 문제를 보고 어떻게 풀지 손코딩이나 메모로 적어놓고 계속해서 보셔야 합니다.
소싯적 저는 화장실갈 때도 일어나자마자, 자기전에도 손코딩한거 보면서 어떻게 풀어야지 하면서 고민했습니다. 그러다 보면 어느순간 "두둥!" 하는 순간이 올겁니다. "꾸준히 포기하지말구요." 질문있으면 저한테 물어보시면서요. 아시겠죠?
또 질문사항있으시면 언제든 말씀 부탁드립니다. 감사합니다. 강사 큰돌 올림.





