5 条题解

  • 2
    @ 2025-1-20 20:20:15

    #include <bits/stdc++.h> using namespace std;

    int main(){ int n,z=z1; cin>>n; for(int i=1;i<=n;i++){ z*=2; } cout<<z;

    return 0;
    

    }

    • 1
      @ 2025-1-18 21:37:04
      using namespace std;
      int n,z=1;
      int main(){
      	cin>>n;
      	for(int i=1;i<=n;i++){
      		z*=2;	
      	}
      	cout<<z;
      	return 0;
      }
      
      • 0
        @ 2025-1-18 17:57:57
        > #include <bits/stdc++.h>
        #include <cmath>
        using namespace std;
        
        int main(){
            int n;
            cin >> n;
            int r = pow(2,n);
            cout << r;
        }
        

        利用中的pow函数可以求二的幂(二分算法)

        • 0
          @ 2025-1-15 18:16:05
          #include<bits/stdc++.h>
          using namespace std;
          int main(){
          	int n,ans = 1;
          	scanf("%d",&n);//读入n
          	if (n == 0){//特判(2^0=1)
          		cout << 1;
          		return 0;
          	}
          	while(n > 0){
          		ans*=2;
          		n--;
          	}
          	printf("%d",ans);
          }
          

          当然,while内的程序可以通过函数实现。

          • 0
            @ 2025-1-15 15:34:45

            #include <bits/stdc++.h>

            using namespace std;

            int main(){

            int n,nn;
            
            cin>>n;
            
            if(0<=n&&n<31){
            
            	nn=pow(2,n);
            
            }
            
            cout<<nn;
            

            }

            • @ 2025-1-15 18:31:54

              我有一个问题:数据范围中明明写了n>=0,n<31;你为什么还要判断?

          • 1

          信息

          ID
          38
          时间
          1000ms
          内存
          128MiB
          难度
          4
          标签
          (无)
          递交数
          122
          已通过
          59
          上传者