Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- ID: 5ak0
- PROG:
- LANG: C++11
- */
- #include <bits/stdc++.h>
- #define fr first
- #define sc second
- #define pb push_back
- #define mpr make_pair
- using namespace std;
- typedef long long ll;
- typedef pair<int, int> pii;
- const int INF = 1e9 + 7, MAXN = 1050;
- int t, n;
- string s[MAXN];
- string nxt(string s){
- char bg = s[0];
- for (int i = 0; i < s.size() - 1; ++i)
- s[i] = s[i + 1];
- s[s.size() - 1] = bg;
- return s;
- }
- int main(){
- ios_base::sync_with_stdio(0);
- cin >> t;
- while (t--){
- cin >> n;
- for (int i = 1; i <= n; ++i){
- cin >> s[i];
- sort(s[i].begin(), s[i].end());
- }
- bool ok = 1;
- for (int i = 2; i <= n; ++i){
- for (int j = 0; j < s[i].size(); ++j){
- if (s[i - 1] + s[i] < s[i] + s[i - 1])
- break;
- s[i] = nxt(s[i]);
- }
- if (s[i - 1] + s[i] > s[i] + s[i - 1])
- ok = 0;
- }
- cout << (ok ? "YES\n" : "NO\n");
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement