求助

P1055 [NOIP2008 普及组] ISBN 号码

H_com_2012 @ 2023-07-27 18:43:39

哪位热心的大佬帮帮忙啊,球球帮帮我这个小菜吧!!!

#include<bits/stdc++.h>
using namespace std;
int n;
int main(){
    cin>>n;
    for(int i=1;i<=n;i++){
        for(int j=1;j<=i;j++){
            long long xy=1;
            for(int x=1;x<=j;x++){
                xy*=i;
            }
            cout<<i<<" ^ "<<j<<" = "<<xy<<" "; 
        } 
        cout<<endl;
    }
}
  1. 我真的不会
  2. 实在不会

by _zzzzzzy_ @ 2023-07-27 18:45:40

@H_com_2012 你这个xy记录的是 i^j呀不是 i\times j


by _zzzzzzy_ @ 2023-07-27 18:47:12

@H_com_2012 这个就要你自己看题解了,题解就是干这个的


by H_com_2012 @ 2023-07-27 18:49:22

#include<bits/stdc++.h>
using namespace std;
string a;
int sz[100005],gs=0,h;
int pd(char ad){
    if(ad=='0'){
        return 0;
    }else if(ad=='1'){
        return 1;
    }else if(ad=='2'){
        return 2;
    }else if(ad=='3'){
        return 3;
    }else if(ad=='4'){
        return 4;
    }else if(ad=='5'){
        return 5;
    }else if(ad=='6'){
        return 6;
    }else if(ad=='7'){
        return 7;
    }else if(ad=='8'){
        return 8;
    }else{
        return 9;
    }
}
int main(){
    int ck;
    cin>>a;
    for(int i=0;i<a.size();i++){
        if(a[i]!='-'){
            gs++;
            sz[gs]=pd(a[i]);
        }
    }
    for(int i=1;i<=gs-1;i++){
        h+=sz[i]*i;
        ck=h;
    }
    int i=h%11;
    char hou;
    if(i==10){
        hou='x';
    }else{
        hou=i;
    }
    int ig=a.size();
    if(pd(hou)==pd(a[ig-1])){
        cout<<"Right";
        return 0;
    }else{
        for(int asd=0;asd<a.size()-1;asd++){
            cout<<a[asd];
        }
        cout<<hou;
    }
}

by Zjc20120331 @ 2023-07-27 19:04:53

@H_com_2012

az……

你这pd可以直接缩写成a[i]-'0'


|