• C++
  • 20240221 信奥寒假集训上午班---字符串练习作业

  • @ 2024-2-21 11:46:37

第一题:单词翻转 image image

第二题:最长连续公共字符串的长度 image image image

第三题:潜伏者 image image image image image

第四题:进制转换 image

#include<iostream>
#include<cctype>
using namespace std;
int main()
{
    int n,m,i,sum=0,time=1;
    char num1[30]={0};
    int num2[30]={0};
    int num3[30]={0};
    cin>>n>>num1>>m;
    for(i=0;num1[i]!=0;i++)
    {
        if(isdigit(num1[i]))//isdigit(num1[i])等同于num1[i]>='0'&&num1[i]<='9'
        {
            num2[i]=num1[i]- '0';
        }
        else
        {
            num2[i]=(num1[i]- 'A')+10;
        }
    }
    int len1=i;
    for(i=len1-1;i>=0;i--)
    {
        sum+=num2[i]*time;
        time*=n;
    }
    int len2=0;
    while(sum>=1)//短除法,把sum转换m进制保存到num3数组中
    {
        num3[len2]=sum%m;
        sum/=m;
        len2++;
    }
    for(int i=len2 - 1;i>=0;i--)//输出num3中保存的m进制数,如果大于等于10 输出字母
    {
        if(num3[i]<10)
        {
            cout<<num3[i];
        }else{
            cout<<(char)num3[i]-10+ 'A';
        }
    }
    return 0;
}

21 条评论

  • @ 2024-2-23 9:13:13

    image

    • @ 2024-2-23 9:11:28

      image image

      • @ 2024-2-23 9:09:45

        image

        • @ 2024-2-23 9:09:13

          image

          • @ 2024-2-23 9:07:05

            image

            • @ 2024-2-23 9:05:17

              image

              • @ 2024-2-23 9:04:35

                image

                • @ 2024-2-22 11:26:55

                  image

                  • @ 2024-2-22 11:21:55
                    #include<bits/stdc++.h>
                    using namespace std;
                    const int N = 1e6+10;
                    char yuan[100]={0};
                    char mi[100]={0};
                    char R[100]={0};
                    int gl[26];
                    //gl数组下标代表着密文,0代表A,1代表B,依次类推25代表Z
                    //gl数组gl[0]用来保存密文A对应的原文字符顺序,
                    int main(){
                        cin>>mi>>yuan>>R;
                        int len=strlen(yuan);
                        int lenr=strlen(R);
                        int flag=0;
                        for(int i=0;i<=len-1;i++){
                            if(gl[mi[i]-'A']==0){
                                gl[mi[i]-'A']=yuan[i]-'A';
                                printf("密文序号:%d 原文序号:%d\n",mi[i]-'A',yuan[i]-'A');
                            }else{
                                if(gl[mi[i]-'A']!=yuan[i]-'A')flag=1;
                            }
                        }
                    //    for(int i=0;i<=25;i++){
                    //        if(gl[i]==0)flag=1;
                    //    }
                        if(flag==0){
                            for(int i=0;i<=lenr-1;i++){
                                cout<<(char)(gl[R[i]-'A']+'A');
                            }
                        }
                        return 0;
                    }
                    
                    • @ 2024-2-22 10:40:22

                      image image

                      • @ 2024-2-22 10:26:53

                        最长连续公共字符串的长度带注释 image

                        • @ 2024-2-22 10:14:04

                          单词翻转带注释 image

                          • @ 2024-2-22 9:22:29

                            image

                            • @ 2024-2-22 9:21:13

                              image

                              • @ 2024-2-22 9:10:38

                                image image image image

                                • @ 2024-2-22 9:07:36

                                  第一题 image 第二题 image 第三题 image

                                  • @ 2024-2-22 9:06:30

                                    image image

                                    • @ 2024-2-22 9:05:33

                                      image

                                      • @ 2024-2-22 9:05:25

                                        image

                                        • @ 2024-2-22 9:04:27

                                          image

                                          • @ 2024-2-22 9:04:09

                                            image

                                            • 1