(算法练习)——问题 1127: [C语言训练]尼科彻斯定理

要求:
https://www.dotcpp.com/oj/problem1127.html

比较基础的题了,而且没有为难你

AC代码:

#include <stdio.h>
#include <iostream>
#include <string>
#include <math.h>
using namespace std;

int main(){
    
    
	int n;
	scanf("%d",&n);
	int sum = 0;
	int signal = 0;
	for(int i = 1;;i += 2){
    
    
		if(sum <(int)pow(n*1.0,3.0) && signal <n){
    
    
			sum = sum + i;
			signal++;
		}
		else if(sum <(int)pow(n*1.0,3.0) && signal >=n){
    
    
			sum = sum - (i-2*n)+i;
			signal++;
		}
		else{
    
    
			printf("%d*%d*%d=%d=",n,n,n,(int)pow(n*1.0,3.0));
			int t  = 0;
			for(int j = i-2*n;t<n;j += 2){
    
    
				printf("%d",j);
				if(t <n-1){
    
    
					printf("+");
				}
				t++;
			}
			break;
		}
	}
}

猜你喜欢

转载自blog.csdn.net/weixin_42377217/article/details/104987177