Language: C++

#include<bits/stdc++.h>
#define rep(i, n) for(int i=0; i<int(n); i++)
#define ALL(a) (a).begin(), (a).end()
using namespace std;
typedef long long ll;
typedef pair<int, int> P;
typedef pair<int, P> PP;

struct edge{
	ll to; char c;
};

ll N, L, index, judge, deg[100010], depth[100010];
vector<edge> gragh[100010];

int main(){
	cin >> N >> L;
	rep(i, N){
		string s; cin >> s;
		int now = 0;
		rep(j, s.size()){
			int f = 1;
			rep(k, gragh[now].size()){
				if(s[j] == gragh[now][k].c){
					now = gragh[now][k].to;
					f = 0;
				}
			}
			if(f){
				index++;
				gragh[now].push_back({index, s[j]});
				deg[now]++;
				now = index;
				depth[now] = j+1;
			}
		}
	}
	rep(i, index+1){
		if(deg[i] == 1){
			judge = (judge ^ ((L - depth[i]) & (- L + depth[i])));
		}
	}
	cout << ((judge)?"Alice":"Bob") << "\n";
	return 0;
}


Compiler output:
a.cc:13:10: error: 'll index' redeclared as different kind of entity
   13 | ll N, L, index, judge, deg[100010], depth[100010];
      |          ^~~~~
In file included from /usr/include/string.h:462,
                 from /usr/include/c++/14/cstring:43,
                 from /usr/include/x86_64-linux-gnu/c++/14/bits/stdc++.h:121,
                 from a.cc:1:
/usr/include/strings.h:50:20: note: previous declaration 'const char* index(const char*, int)'
   50 | extern const char *index (const char *__s, int __c)
      |                    ^~~~~
a.cc: In function 'int main()':
a.cc:30:38: error: no post-increment operator for type
   30 |                                 index++;
      |                                      ^~
a.cc:31:53: error: no matching function for call to 'std::vector<edge>::push_back(<brace-enclosed initializer list>)'
   31 |                                 gragh[now].push_back({index, s[j]});
      |                                 ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
In file included from /usr/include/c++/14/vector:66,
                 from /usr/include/c++/14/functional:64,
                 from /usr/include/x86_64-linux-gnu/c++/14/bits/stdc++.h:53:
/usr/include/c++/14/bits/stl_vector.h:1283:7: note: candidate: 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = edge; _Alloc = std::allocator<edge>; value_type = edge]'
 1283 |       push_back(const value_type& __x)
      |       ^~~~~~~~~
/usr/include/c++/14/bits/stl_vector.h:1283:35: note:   no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'const std::vector<edge>::value_type&' {aka 'const edge&'}
 1283 |       push_back(const value_type& __x)
      |                 ~~~~~~~~~~~~~~~~~~^~~
/usr/include/c++/14/bits/stl_vector.h:1300:7: note: candidate: 'void std::vector<_Tp, _Alloc>::push_back(value_type&&) [with _Tp = edge; _Alloc = std::allocator<edge>; value_type = edge]'
 1300 |       push_back(value_type&& __x)
      |       ^~~~~~~~~
/usr/include/c++/14/bits/stl_vector.h:1300:30: note:   no known conversion for argument 1 from '<brace-enclosed initializer list>' to 'std::vector<edge>::value_type&&' {aka 'edge&&'}
 1300 |       push_back(value_type&& __x)
      |                 ~~~~~~~~~~~~~^~~
a.cc:33:39: error: cannot resolve overloaded function 'index' based on conversion to type 'int'
   33 |                                 now = index;
      |                                       ^~~~~
a.cc:38:21: error: invalid operands of types '<unresolved overloaded function type>' and 'int' to binary 'operator+'
   38 |         rep(i, index+1){
      |                ~~~~~^~
a.cc:2:38: note: in definition of macro 'rep'
    2 | #define rep(i, n) for(int i=0; i<int(n); i++)
      |                                      ^