#include <iostream>
using namespace std;
struct t_link{
t_link*next;
};
bool isLooped(t_link*first)
{
for(auto*p=first;p;p=p->next){
if(!p->next)return false;
if(p->next==first)return true;
}
return false;
}
int main(){
t_link arr[20];
arr[0].next=&arr[1];
arr[1].next=&arr[2];
arr[2].next=&arr[3];
arr[3].next=&arr[0];
cout<<isLooped(&arr[0])<<endl;
arr[4].next=&arr[5];
arr[5].next=&arr[6];
arr[6].next=&arr[7];
arr[7].next=nullptr;
cout<<isLooped(&arr[4])<<endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKc3RydWN0IHRfbGlua3sKICB0X2xpbmsqbmV4dDsKfTsKCmJvb2wgaXNMb29wZWQodF9saW5rKmZpcnN0KQp7CiAgZm9yKGF1dG8qcD1maXJzdDtwO3A9cC0+bmV4dCl7CiAgICBpZighcC0+bmV4dClyZXR1cm4gZmFsc2U7CiAgICBpZihwLT5uZXh0PT1maXJzdClyZXR1cm4gdHJ1ZTsKICB9CiAgcmV0dXJuIGZhbHNlOwp9CgppbnQgbWFpbigpewogIHRfbGluayBhcnJbMjBdOwogIGFyclswXS5uZXh0PSZhcnJbMV07CiAgYXJyWzFdLm5leHQ9JmFyclsyXTsKICBhcnJbMl0ubmV4dD0mYXJyWzNdOwogIGFyclszXS5uZXh0PSZhcnJbMF07CiAgY291dDw8aXNMb29wZWQoJmFyclswXSk8PGVuZGw7CiAgYXJyWzRdLm5leHQ9JmFycls1XTsKICBhcnJbNV0ubmV4dD0mYXJyWzZdOwogIGFycls2XS5uZXh0PSZhcnJbN107CiAgYXJyWzddLm5leHQ9bnVsbHB0cjsKICBjb3V0PDxpc0xvb3BlZCgmYXJyWzRdKTw8ZW5kbDsKICByZXR1cm4gMDsKfQ==