using namespace std
typedef long long ll
typedef pair<char, char> pcc
typedef pair<int, int> pii
const int N = 1e6 + 5
int n, m, t
typedef struct Lnode{
int data
Lnode *nxt
}*LinkList
void headInsert (LinkList &L, int n)
{
L = new Lnode
L -> nxt = null
for (int i = 1
Lnode *p = new Lnode
cin >> p -> data
p -> nxt = L -> nxt
L -> nxt = p
}
}
void tailInsert (LinkList &L, int n)
{
L = new Lnode
L -> nxt = null
Lnode *r = L
for(int i = 1
Lnode *p = new Lnode
cin >> p -> data
p -> nxt = null
r -> nxt = p
r = p
}
}
int getlen(LinkList L)
{
int sz = 0
L = L -> nxt
while(L) {
L = L -> nxt
sz ++
}
return sz
}
void insert(LinkList &a, LinkList &b, int x)
{
Lnode *r = a, *p = b
while(r -> nxt != null) { //找到 a 的尾指针
r = r -> nxt
}
for(int i = 1
p = p -> nxt
}
r -> nxt = p
}
int getcom(LinkList a, LinkList b)
{
int la = getlen(a), lb = getlen(b)
LinkList longlist = a, shortlist = b
int delta = la - lb
if(delta < 0) {
delta = -delta
longlist = b, shortlist = a
}
for(int i = 1
longlist = longlist -> nxt
}
int ans = 0
while(longlist) {
if(longlist == shortlist) {
ans ++
}
longlist = longlist -> nxt
shortlist = shortlist -> nxt
}
return ans
}
void print(Lnode *L)
{
Lnode *p = L -> nxt
while(p) {
cout << p -> data << " "
p = p -> nxt
}
puts("")
}
signed main()
{
Lnode *a = null, *b = null
// headInsert(L, 10)
tailInsert(a, 6)
tailInsert(b, 6)
insert(b, a, 5)
dbg(getcom(a, b))
system("pause")
return 0
}
// 1 2 3 4 5 6
// 10 9 8 7 6 5