# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
398742 | YaserFaisal | 세 명의 친구들 (BOI14_friends) | C++17 | 1100 ms | 18380 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <bits/stdc++.h>
using namespace std ;
//#define int long long
int MOD = 1e9+7 ;
int freq[200] ;
vector < int > v[200] ;
int32_t main()
{
ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
int n ; cin >> n ;
string s ; cin >> s ;
for ( int i = 0 ; i < n ; i++ )
{
freq[s[i]]++ ;
v[s[i]].push_back(i) ;
}
char x ;
int odd = 0 ;
for ( int i = 'A' ; i <= 'Z' ; i++ )
{
if ( freq[i] % 2 )
{
odd++ ;
x = i ;
}
}
if ( odd != 1 || n % 2 == 0 )
{
cout << "NOT POSSIBLE" ;
return 0 ;
}
string ans = "-" ;
for ( int i = 0 ; i < v[x].size() ; i++ )
{
string g = s ;
g.erase(g.begin()+v[x][i]) ;
string a = (g.substr(0,n/2)) , b = (g.substr(n/2,n/2)) ;
if ( a == b )
{
if ( ans != "-" )
{
cout << "NOT UNIQUE" ;
return 0 ;
}
ans = a ;
}
}
if ( ans == "-" ) ans = "NOT POSSIBLE" ;
cout << ans ;
}
컴파일 시 표준 에러 (stderr) 메시지
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |