社区讨论

我觉得是最长解了。。。勿抄

P1067[NOIP 2009 普及组] 多项式输出参与者 2已保存回复 1

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
1 条
当前快照
1 份
快照标识符
@lp2pwkc5
此快照首次捕获于
2023/11/17 22:30
2 年前
此快照最后确认于
2023/11/17 22:37
2 年前
查看原帖
C
#include<stdio.h>
int main(){
    int n;
    scanf("%d",&n);
    int a[n+1];
    for(int i=0;i<=n;i++){
        scanf("%d ",&a[i]);
    }
    for(int m=n,i=0;m>=0,i<=n;m--,i++){
        if(a[i]!=0){
            if(m!=n){
                if(m==0){
                    if(a[i]>0){
                        printf("+%d",a[i]);
                    }else{
                        printf("%d",a[i]);                    
                    }
                }else if(m==1){
                    if(a[i]==1){
                        printf("+x");
                    }else if(a[i]==-1){
                    printf("-x");
                    }else{
                        if(a[i]>0){
                            printf("+%dx",a[i]);
                        }else{
                            printf("%dx",a[i]);                    
                        }
                    }
                }else{
                    if(a[i]==1){
                        printf("+x^%d",m);
                    }else if(a[i]==-1){
                        printf("-x^%d",m);
                    }else{
                        if(a[i]>0){
                            printf("+%dx^%d",a[i],m);
                        }else{
                            printf("%dx^%d",a[i],m);                    
                        }
                    }
                }
            }else{
                if(m==0){
                    if(a[i]>0){
                        printf("%d",a[i]);
                    }else{
                        printf("%d",a[i]);                    
                    }
                }else if(m==1){
                    if(a[i]==1){
                        printf("x");
                    }else if(a[i]==-1){
                        printf("-x");
                    }else{
                        if(a[i]>0){
                            printf("%dx",a[i]);
                        }else{
                            printf("%dx",a[i]);                    
                        }
                    }
                }else{
                    if(a[i]==1){
                        printf("x^%d",m);
                    }else if(a[i]==-1){
                        printf("-x^%d",m);
                    }else{
                        if(a[i]>0){
                            printf("%dx^%d",a[i],m);
                        }else{
                            printf("%dx^%d",a[i],m);                    
                        }
                    }
                }
            }
        }
    }
    return 0;
}

回复

1 条回复,欢迎继续交流。

正在加载回复...