Problem:
MathJax.Hub.Config({ tex2jax: { inlineMath: [["$","$"], ["\\(","\\)"]], processEscapes: true }});

Ring

Write a program which finds a pattern $p$ in a ring shaped text $s$.

Input

In the first line, the text $s$ is given.

In the second line, the pattern $p$ is given.

Output

If $p$ is in $s$, print Yes in a line, otherwise No.

Constraints

$1 \leq $ length of $p \leq $ length of $s \leq 100$

$s$ and $p$ consists of lower-case letters

Sample Input 1

vanceknowledgetoad
advance

Sample Output 1

Yes

Sample Input 2

vanceknowledgetoad
advanced

Sample Output 2

No

Solution in C# (judge verdict: Runtime Error)

using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {


            //?????\??????????????????????????????????????????

            //????????°??¶???????´¢?????????????????????????????????????????????
            char[] ringstring = Console.ReadLine().ToCharArray();

            //??\????????????????´¢???????????????????????????????????????
            string searchstring = Console.ReadLine();

            //???????????????????????????????????????????????????
            List<int> orderset = new List<int>();


            bool result = true;


            //???????´¢???????????????????????????????????????????????????????????????????????????(???????????????????????????)
            for (int i = 0; i < ringstring.Length; i++)
            {
                if (ringstring[i].ToString() == searchstring.Substring(0, 1)) orderset.Add(i + 1);
            }



            //??£?????§????????£?????´?????????????????????????????????????????§?????§???????????´????????????????¬?????????????????´¢????????????

            //????????????????????????????????????
            for (int j = 0; j < orderset.Count; j++)
            {
                result = true;

                int countnum = orderset[j];

                int counter = 0;

                //countnum????????????????????°??¶???????????????????????????????????????????¶????????????´??? 
                if (countnum < ringstring.Length)
                {
                    for (int i = countnum; i < ringstring.Length; i++)
                    {

                        if (ringstring[countnum].ToString() == searchstring.Substring(counter + 1, 1)) /* ???????????????1???????????????????????????????????§???+1??¨?????? */
                        {
                            counter++;
                            continue;
                        }

                        counter++;
                        result = false;
                        break;
                    }

                }

                //?¶?????????´??????????????????????????????????????????????????????????????´???
                if(countnum > ringstring.Length || result)
                {
                    result = true;

                    int firscounter = 0;

                    int testhikizann = counter;

                    //????????????????????????????´¢????????????(????????????????????°??????????´¢????????????????????????????????????????????????????????§?????????)
                    while (counter <  searchstring.Length - testhikizann)
                    {
                        if (ringstring[firscounter].ToString() == searchstring.Substring(counter + 1, 1))
                        {
                            firscounter++;
                            counter++;
                            continue;
                        }

                        result = false;
                        break;
                    }

                }

     
            }

            string output = "Yes";

            if (!result) output = "No";

            Console.WriteLine("{0}", output);
        }
    
    }

}