Submission #164152

# Submission time Handle Problem Language Result Execution time Memory
164152 2019-11-17T18:31:08 Z Nucleist Growing Vegetable is Fun 3 (JOI19_ho_t3) C++14
0 / 100
9 ms 376 KB
#include <bits/stdc++.h> 
using namespace std; 
#pragma GCC target ("avx2")
#pragma GCC optimization ("O3")
#pragma GCC optimization ("unroll-loops")
#define flash ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0)
#define debug(x) cerr << " - " << #x << ": " << x << endl;
#define debugs(x, y) cerr << " - " << #x << ": " << x << " " << #y << ": " << y << endl;
#define all(x) (x).begin(),(x).end()
#define sz(x) (ll)x.size()
#define ll long long
#define INF 1000000000
#define MOD 1000000007
#define pb push_back
#define ve vector<ll>
#define dos pair<ll,ll>
#define vedos vector<dos>
#define rand mt19937 rng(chrono::steady_clock::now().time_since_epoch().count())
struct greateri
{
    template<class T>
    bool operator()(T const &a, T const &b) const { return a > b; }
};
map<string,ll>vis;
bool checki(string k)
{
	for (ll i = 0; i < k.size()-1; ++i)
	{
		if(k[i]==k[i+1])return false;
	}
	return true;
}
ll ans;
ll glob=INF;
int main()
{
  //flash;
	ll x;
	cin>>x;
	string sol;
	cin>>sol;
	int dan=0,san=0;
	for (int i = 0; i < sol.size(); ++i)
	{
		if(sol[i]=='R')dan++;else san++;
	}
	if(x%2==0 && san!=dan){cout<<-1;return 0;}
	if(x%2==1 && abs(san-dan)!=1){cout<<-1;return 0;}
	int ans=0;
	bool na=false;
	while(!checki(sol))
	{
         for (int i = 1; i < sol.size(); ++i)
        {
         	if(sol[i]==sol[i-1] && sol[i]!=sol[i+1])
         	{
         		int yo = i;
         		while(sol[yo]!=sol[yo+1] && (yo<sol.size()-1))
         		{
         			if(sol[yo-1]!=sol[yo] && sol[yo+1]!=sol[yo])
         			{
         				break;
         			}
         			swap(sol[yo],sol[yo+1]);
         			yo++;
         			ans++;
         		}
         		break;
         	}
        }
	}
	cout<<ans;
  return 0;
}
//code the AC sol !
// BS/queue/map

Compilation message

joi2019_ho_t3.cpp:4:0: warning: ignoring #pragma GCC optimization [-Wunknown-pragmas]
 #pragma GCC optimization ("O3")
 
joi2019_ho_t3.cpp:5:0: warning: ignoring #pragma GCC optimization [-Wunknown-pragmas]
 #pragma GCC optimization ("unroll-loops")
 
joi2019_ho_t3.cpp: In function 'bool checki(std::__cxx11::string)':
joi2019_ho_t3.cpp:27:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (ll i = 0; i < k.size()-1; ++i)
                 ~~^~~~~~~~~~~~
joi2019_ho_t3.cpp: In function 'int main()':
joi2019_ho_t3.cpp:43:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (int i = 0; i < sol.size(); ++i)
                  ~~^~~~~~~~~~~~
joi2019_ho_t3.cpp:53:28: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
          for (int i = 1; i < sol.size(); ++i)
                          ~~^~~~~~~~~~~~
joi2019_ho_t3.cpp:58:43: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
            while(sol[yo]!=sol[yo+1] && (yo<sol.size()-1))
                                         ~~^~~~~~~~~~~~~
joi2019_ho_t3.cpp:50:7: warning: unused variable 'na' [-Wunused-variable]
  bool na=false;
       ^~
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
2 Correct 2 ms 252 KB Output is correct
3 Incorrect 2 ms 252 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
2 Correct 2 ms 252 KB Output is correct
3 Incorrect 2 ms 252 KB Output isn't correct
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
2 Correct 9 ms 256 KB Output is correct
3 Correct 9 ms 376 KB Output is correct
4 Incorrect 2 ms 256 KB Output isn't correct
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
2 Correct 2 ms 252 KB Output is correct
3 Incorrect 2 ms 252 KB Output isn't correct
4 Halted 0 ms 0 KB -