Submission #486795

#TimeUsernameProblemLanguageResultExecution timeMemory
486795HaidaraArranging Shoes (IOI19_shoes)C++17
Compilation error
0 ms0 KiB
#include<bits/stdc++.h>
#define rep(i,x,n) for(int i=(x);i<(n);i++)
#define FOR(i,n) rep(i,0,n)
#define v(i) vector< i >
#define ll long long 
using namespace std;
const ll inf=1LL<<62LL;
const ll mod=1e9+7;
const ll maxn=100200;
ll count_swaps(ll a[])
{
	ll ans=0;
	set<int>posl[maxn],posr[maxn];
	FOR(i,n)
	if(a[i]<0)
		posl[-a[i]].insert(i);
	else 
		posr[a[i]].insert(i);
	v(bool)vis(maxn,0);
	for(int i=0;i<sizeof(a)/sizeof(a[0]);i++)
	{
		if(vis[i])
			continue;
		if(a[i]>0)
			ans++;
		if(a[i]<0)
			a[i]*=-1;
		vis[*posr[a[i]].begin()]=1;
		vis[*posl[a[i]].begin()]=1;
		ans+=abs(*posr[a[i]].begin()-*posl[a[i]].begin());
		posl[a[i]].erase(posl[a[i]].begin());
		posr[a[i]].erase(posr[a[i]].begin());
	}
	return ans;
}

Compilation message (stderr)

shoes.cpp: In function 'long long int count_swaps(long long int*)':
shoes.cpp:14:8: error: 'n' was not declared in this scope
   14 |  FOR(i,n)
      |        ^
shoes.cpp:2:37: note: in definition of macro 'rep'
    2 | #define rep(i,x,n) for(int i=(x);i<(n);i++)
      |                                     ^
shoes.cpp:14:2: note: in expansion of macro 'FOR'
   14 |  FOR(i,n)
      |  ^~~
shoes.cpp:20:23: warning: 'sizeof' on array function parameter 'a' will return size of 'long long int*' [-Wsizeof-array-argument]
   20 |  for(int i=0;i<sizeof(a)/sizeof(a[0]);i++)
      |                      ~^~
shoes.cpp:10:19: note: declared here
   10 | ll count_swaps(ll a[])
      |                   ^
shoes.cpp:20:15: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare]
   20 |  for(int i=0;i<sizeof(a)/sizeof(a[0]);i++)
      |              ~^~~~~~~~~~~~~~~~~~~~~~~