2 条题解

  • 3
    @ 2023-1-16 14:47:25
    /*
    假设i是x位数,要取得i的平方的右侧的x位数
    求10的X次方(x就是n的位数) 
    */
    #include<bits/stdc++.h>
    using namespace std;
    int fun(int n){
    	int r = 1;
    	while(n != 0){
    		r = r * 10;//求10的次方
    		n = n / 10; 
    	}
    	return r;
    }
    int main()
    {
    	int n, c = 0;
    	cin >> n;
    	for (int i = 1; i <= n; i++){
    		if(i*i % fun(i) == i){
    			c++;
    		}
    	}
    	cout << c << endl;
    	return 0;
    }
    
    
    • 1
      @ 2023-10-4 19:58:32

      一种十分暴力的方法

      #include<bits/stdc++.h>
      using namespace std;
      int n,sum;
      int main()
      {
          cin>>n;
          for(int i=1;i<=n;i++)
          {
              int m=i*i;
              if(i<10)
              {
                  if(i==m%10)
                  {
                      sum++;
                  }
              }
              else if(i<100)
              {
                  if(i==m%100)
                  {
                      sum++;
                  }
              }
              else if(i<1000)
              {
                  if(i==m%1000)
                  {
                      sum++;
                  }
              }
              else 
              {
                  if(i==m%10000)
                  {
                      sum++;
                  }
              }
          }
          cout<<sum;
          return 0;
      }
      
      • 1

      信息

      ID
      726
      时间
      1000ms
      内存
      128MiB
      难度
      1
      标签
      递交数
      57
      已通过
      44
      上传者