Բիթային օպերացիաներ

Երբեմն մեզ անհրաժեշտ է կատարել գործողություններ երկու երկուական համակարգի թվերի վրա։ Օրինակ, եթե ունենք երկու թվեր a և b, հնարավոր է ուզենք, որ արդյունքի բոլոր բիթերը լինեն 0, բացի այն դիրքերից, որտեղ a-ի և b-ի համապատասխան բիթերը միաժամանակ 1 են (այսինքն՝ AND օպերացիա): Կամ գուցե ուզենք, որ արդյունքում 1 լինեն այն բոլոր դիրքերը, որտեղ կամ a-ի, կամ b-ի բիթը 1 է (այսինքն՝ OR օպերացիա):

a

b (OR)

b

a

a ^ b (XOR)
բացառիչ OR

երկուական համակարգի և տասնորդական համակարգի ներկայացումներ

երկուական համակարգի և տասնորդական համակարգի ներկայացումներ

1 եթե -ն ու -ն էլ 1 են, այլապես 0

1 եթե -ն կամ -ն 1 են, այլապես 0

1 եթե բիթերը տարբեր են, այլապես 0

110 (6)

101 (5)

100 (4)

111 (7)

011 (3)

100111 (39)

010100 (20)

100 (4)

110111 (55)

110011 (51)

Առաջադրանք

Տրված են n ամբողջ թվեր, անհրաժեշտ է գտնել դրանցից այն 2 թվերը, որոնց վրա OR կիրառելով, կստացվի ամենամեծ հնարավոր թիվը։

Մուտք

Մուտքի առաջին տողում տրված է մեկ ամբողջ թիվ n (1 ≤ n ≤ 1000)։

Հաջորդ տողում տրված են n բացատով առանձնացված ամբողջ թվեր (1 ≤

Ելք

Ելքում պետք է արտածել ամենամեծ արժեքը, որը կարելի է ստանալ տվյալ թվերից ցանկացած երկուսի վրա OR կիրառելով։

Օրինակներ

Մուտք

Ելք

5
1 2 3 4 5

7

Բացատրություն

7 արժեքը հնարավոր է ստանալ, եթե OR կիրառենք հետևյալ զույգերից որևէ մեկի վրա.

  • 2 (010) և 5 (101) → 7 (111)

  • 3 (011) և 4 (100) → 7 (111)

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue