30分qz

P1055 [NOIP2008 普及组] ISBN 号码

bohemiao @ 2023-09-27 14:24:38

#include<bits/stdc++.h>
using namespace std;
string s,z;
int main(){
    cin>>s;
    z=s;
    if(((int)s[2]%48+(int)s[3]%48*2+(int)s[4]%48*3+(int)s[5]%48*4+(int)s[6]%48*5+
    (int)s[7]%48*6+(int)s[8]%48*7+(int)s[9]%48*8+(int)s[10]%48*9)%11==(int)s[12]%48) cout<<"Right";
    else if(((int)s[2]%48+(int)s[3]%48*2+(int)s[4]%48*3+(int)s[5]%48*4+(int)s[6]%48*5+
    (int)s[7]%48*6+(int)s[8]%48*7+(int)s[9]%48*8+(int)s[10]%48*9)%11==10) cout<<"Right";
    else{
        if(((int)s[2]%48+(int)s[3]%48*2+(int)s[4]%48*3+(int)s[5]%48*4+(int)s[6]%48*5+(int)s[7]%48*6+(int)s[8]%48*7+(int)s[9]%48*8+(int)s[10]%48*9)%11==10) s[12]=89;
        else{
            s[12]=((int)s[2]%48+(int)s[3]%48*2+(int)s[4]%48*3+(int)s[5]%48*4+(int)s[6]%48*5+(int)s[7]%48*6+(int)s[8]%48*7+(int)s[9]%48*8+(int)s[10]%48*9)%11+46;
        }
        if(z==s) cout<<"Right";
        else cout<<s;
    }
    return 0;
}

O(1)的时间复杂度。

123cat 的运势 § 中平 § 宜:骗分 “不可以,总司令”然后拿一半分 宜:写暴戾语言 成功发泄忌:摸鱼 被教练制裁 忌:打线上公开赛 掉大分 你已经在洛谷连续打卡了 92 天

总司令不管用


by jhrjhr @ 2023-10-04 08:01:29

#include<bits/stdc++.h>
using namespace std;
int main(){
    char a,b,c,d,e,f,g,h,i,q,wort;
    int ans;
    scanf("%c-%c%c%c-%c%c%c%c%c-%c",&a,&b,&c,&d,&e,&f,&g,&h,&i,&wort);
    ans=int(a-'0')*1+int(b-'0')*2+int(c-'0')*3+int(d-'0')*4+int(e-'0')*5+int(f-'0')*6+int(g-'0')*7+int(h-'0')*8+int(i-'0')*9;
    ans%=11;
    if(ans!=10) q=ans+'0';
    if(ans==10) q='X';
    if(q==wort) cout<<"Right";
    if(q!=wort) printf("%c-%c%c%c-%c%c%c%c%c-%c",a,b,c,d,e,f,g,h,i,q);
    return 0;
}

|