,이 코드 작성어떻게 2의 큰 힘을 효율적으로 계산합니까? 내가 <code>0 < n ≤ 10⁹</code>를 들어, 계산하기 위해 노력하고있어
re=(2^n)%1000000007
의 값 : n
이 10⁹ 경우
int main()
{
int n,i,re=1;
scanf("%d",&n);
for(i=0; n>i; i++) re=(2*re)%1000000007;
printf("%d",re);
}
, 내 코드가 너무 오래 걸립니다.
더 빠르게 만들려면 어떻게해야합니까?
[코드 검토] (https://codereview.stackexchange.com/) –
@ArunAS 문제의 적절한 설명이 주어지고 문제의 코드가 실제로 OP에 의해 작성된 경우에만. [그들의 도움말 센터] (https://codereview.stackexchange.com/help/on-topic)를보십시오. – Mast
@Mast yes,하지만 그는 온라인 판사를 사용하기 때문에 OP가 전체 질문에 액세스 할 수 있다고 확신합니다. 그러나 당신의 제안은 참으로 유용합니다. 코드 검토로 마이그레이션 할 때, 작업 코드와 좋은 설명이 있어야합니다. –