Tìm kiếm chuỗi số


Submit solution

Points: 1 (partial)
Time limit: 1.0s
Memory limit: 98M

Author:
Problem type
Allowed languages
Ada, Assembly, Awk, C, C++, C11, CLANG, CLANGX, Classical, COBOL, Coffee, CSC, D lang, DART, F95, FORTH, Fortrn, GAS32, GO, Haskell, Itercal, Java, kotlin, LEAN, LISP, LUA, MONOVB, Nasm, OCAML, Pascal, Perl, php, PIKE, prolog, Pypy, Python, Ruby 2, RUST, Scala, SCM, SED, SWIFT, TCL, TUR, V8JS, VB, ZIG

Với hai số tự nhiên N1 và N2 , người ta nói rằng N1 là dãy liên tiếp của N2 nếu trong N1 xuất hiện tất cả các chữ số trong cùng một trật tự và tiếp giáp. Tạo một chương trình đọc hai số tự nhiên và viết nếu đầu tiên là một dãy tiếp giáp của thứ hai.

Đầu vào

Đầu vào bao gồm một số trường hợp thử nghiệm và kết thúc với sự kết thúc của tập tin (EOF). Dòng đầu tiên của mỗi mục nhập bao gồm giá trị N1 \((1 < N1 <10^10 )\), dòng thứ hai bao gồm một giá trị N2 \((N1 < N2 <10^32)\).

Đầu ra

Đối với mỗi trường hợp thử nghiệm, in ra số lượng các chuỗi con liền kề nhau và vị trí mà chuỗi con bắt đầu, nếu có nhiều dãy con hơn, hãy in nơi nó bắt đầu chuỗi cuối cùng. Nếu không có dãy con, hãy in "Nao existe subsequencia" (có nghĩa là không có dãy con). Hiển thị kết quả dưới dạng đầu ra mẫu.

VÍ DỤ

INPUT

78954

7895478954789547895447895478954

464133

1331646546874694

12

1231321455123214565423112

OUTPUT

Caso # 1:

Qtd.Subsequencias: 6

Pos: 27

Caso # 2:

Nao existe tropencia

Caso # 3:

Qtd.Subsequencias: 3

Pos: 24


Comments


  • 0
    khanhpham  commented on Oct. 2, 2022, 6:34 p.m. edit 2
    #include<bits/stdc++.h>
    using namespace std;
    bool sosanh(char x[1000],char y[1000],int z){
        for(int l=0;l<z;l++){
            if(x[l]!=y[l]){
                return false;
            }
        }
        return true;
    }
    int main(){
        char s1[1000],s2[1000],k[1000],c=' ';
        int dem,t=0;
        long long index;
        while(c!=EOF)
        {
            t++;
            index=-1;
            cin>>s1;
            cin>>s2;
            dem=0;
            for(int i=0;i<strlen(s2);i++)
            {
                for(int j=0;j<strlen(s1);j++){
                    k[j]=s2[j+i];
            }
    
                if(sosanh(k,s1,strlen(s1)))
                {
                    dem++;
                    index=i;
                }
            }
            cout<<"Caso # "<<t<<":"<<endl;
            if (dem==0) cout<<"Nao existe tropencia\n";
            else
            {
                cout<<"Qtd.Subsequencias: "<<dem<<endl;
                cout<<"Pos: "<<index+1<<endl;
            }
            c=getchar();
        }
    }

    em bi sai o dau vay a