#include<iostream>
#include<algorithm>
using namespace std;
long long dalzina, lookup[100001], kolkoOtVsiaka[200001]; // ot heap vsi4ko e definirano sas default stoinost nula. btw ne gledame vav nuleviat index, zatova masiva ni e sas edinica po-golam
int main()
{
    cin>>dalzina;
    for(long long mesec = 1; mesec <= dalzina; mesec++)
    {
        long long vhod;
        cin>>vhod;
        lookup[mesec] = vhod;
    }

    long long naiGolamoMnozestvoOtVzaimnoUsporedni = 0;
    for(long long mesec = 1; mesec <= dalzina; mesec++)
    {
        long long vhod;
        cin>>vhod;
        // neka otricatelnite, ili na razl4na strana nakloneni pravi, sa definirani ednite ot 4isla ot 1 do 100000 za polozitelnite i ravni na nula i ot 100001 do 200000 za otricatelnite, nuleviat index niama da se izpolzva, zatova triabva goleminata na masiva da e 200001
        if(lookup[vhod]-mesec >= 0)
        {
            kolkoOtVsiaka[lookup[vhod]-mesec]++;
            if(kolkoOtVsiaka[lookup[vhod]-mesec] > naiGolamoMnozestvoOtVzaimnoUsporedni) // moze dori napravo da se dobavi edinica na tozi red ama za po-hubavo i iasno 6te e napisano na otdelen red, toest sas ++variable 6te se dobavi
            {
                naiGolamoMnozestvoOtVzaimnoUsporedni = kolkoOtVsiaka[lookup[vhod]-mesec];
            }
        }
        else
        {
            kolkoOtVsiaka[abs(lookup[vhod]-mesec)+100000]++;
            if(kolkoOtVsiaka[abs(lookup[vhod]-mesec)+100000] > naiGolamoMnozestvoOtVzaimnoUsporedni) // moze dori napravo da se dobavi edinica na tozi red ama za po-hubavo i iasno 6te e napisano na otdelen red, toest sas ++variable 6te se dobavi
            {
                naiGolamoMnozestvoOtVzaimnoUsporedni = kolkoOtVsiaka[abs(lookup[vhod]-mesec)+100000];
            }
        }
        if(kolkoOtVsiaka[abs(lookup[vhod]-mesec)] > naiGolamoMnozestvoOtVzaimnoUsporedni) // razstoianieto mezdu samite 4isla vav 2ta kalendara kato taka mozem da pusnem mezdu 2te niakakva mislena linia i vav sa6tnost celta e da namerim vazmozno nai-mnogo usporedni pravi, kato vzaimno usporedni, nai-golamata takava grupa i vav sa6tnost sas tova 4islo taka moze da se kaze, 4e se definira ugula i taka moze da se razli4at razli4nite pravi. lookup table e za da ni ulesni zivota i zabarza algorithma
        {
            naiGolamoMnozestvoOtVzaimnoUsporedni = kolkoOtVsiaka[abs(lookup[vhod]-mesec)];
        }
    }
    cout<<naiGolamoMnozestvoOtVzaimnoUsporedni<<endl;
    return 0;
}
