REPALIND - Xâu đối xứng hoàn hảo

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Go, Java, Pascal, Perl, PHP, Python, Ruby, Rust, Scratch, Swift

Một xâu được gọi là xâu đối xứng nếu đọc xâu đó từ trái sang phải hoặc đọc từ phải sang trái đều như nhau.

Ví dụ:

  • aba, xyyx, zz là xâu đối xứng.
  • abc, xyzy, contest không phải là xâu đối xứng.

Cho xâu ~s~ chỉ gồm các kí tự in thường và số nguyên dương ~k~. Gọi xâu ~t~ là xâu thu được bằng cách viết xâu ~s~ lặp lại liên tiếp ~k~ lần. Hãy cho biết xâu ~t~ có phải là xâu đối xứng hay không.

Input

  • Dòng đầu tiên gồm số nguyên ~T\ (1 ≤ T ≤ 20)~ - số bộ dữ liệu vào;
  • ~T~ nhóm dòng tiếp theo, mỗi nhóm dòng mô tả một bộ dữ liệu vào gồm hai dòng:
    • Dòng thứ nhất gồm xâu ~s~ có độ dài không vượt quá ~5000~;
    • Dòng thứ hai gồm số nguyên ~k\ (1 ≤ k ≤ 10^{18})~.

Output

  • Với mỗi bộ dữ liệu vào, nếu xâu t thu được là xâu đối xứng thì in ra YES. Ngược lại, in ra NO.

Sample

Input #1
3
aba
3
ccdd
2
freecontest
1
Output #1
YES
NO
NO

Hint

  • Với bộ dữ liệu vào thứ nhất, ta có ~t =~ abaabaaba là một xâu đối xứng.
  • Với bộ dữ liệu vào thứ hai, ta có ~t =~ ccddccdd không phải là một xâu đối xứng.
  • Với bộ dữ liệu vào thứ ba, ta có ~t =~ freecontest không phải là một xâu đối xứng.

Problem source: Kc97ble - Free Contest


Bình luận

Hãy đọc nội quy trước khi bình luận.



  • 1
    thangok  đã bình luận lúc 22, Tháng 4, 2024, 8:28

    include<bits/stdc++.h>

    using namespace std; int main(){ iosbase::syncwith_stdio(false); cin.tie(0);cout.tie(0);

    int t;
    cin>>t;
    cin.ignore();
    while(t--){
        string s;
        getline(cin,s);
        long long k;cin>>k;
        cin.ignore();
        bool check=true;
        for(int i=0;i&lt;s.length();i++){
            if(s[i]!=s[s.length()-i-1]){ check=false;
            break;}
        }
        if(check==true) cout<<"YES";
        else cout<<"NO";
        cout<&lt;endl;
    }
    return 0;
    

    }


  • 0
    KhoiMinh  đã bình luận lúc 27, Tháng 3, 2024, 10:56

    Nếu xâu S là xâu đối xứng thì dù lặp lại bao nhiêu lần thì nó vẫn là xâu đối xứng, từ đó chỉ cần kiểm tra tính đối xứng cửa S là ra.


  • 0
    KhoiMinh  đã bình luận lúc 27, Tháng 3, 2024, 10:52

    Nếu xâu S là xâu đối xứng thì dù lặp lại bao nhiêu lần thì nó vẫn là xâu đối xứng, từ đó chỉ cần kiểm tra tính đối xứng cửa S là ra.