Logo
(追記) (追記ここまで)

7164번 - Palindroomide vastulöök 다국어

시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초 1024 MB165433.333%

문제

Palindroomid on programmeerimisvõistlustel läbi aegade korduv teema, kuid enamasti on nendega seotud ülesanded olnud küllaltki lihtsad ja palindroomid tunnevad end sellepärast halvasti. Seetõttu otsustati Palindroomide Maailmakongressil, et palindroomide jõud tuleb ühendada ning võistlusprogrammeerijatele koht kätte näidata.

Palindroomid on kavalad ja peidavad ennast sageli sõnedesse ära. Sõne sisse peitmine tähendab, et kui me kustutame sõnest mingi hulga märke ja alles jäänud märgid moodustavad palindroomi, siis oligi see palindroom sõnes peidus. Näiteks sõnes 'banaan' peidavad end palindroomid 'aaa', 'naan', 'nan', 'b' j.n.e.

Sõne igal märgil on palindroomiline jõud. See jõud võrdub märgi järjenumbri (alustame loendamist ühest) ja sellel märgil end peitvate palindroomide arvu korrutisega. Näiteks sõne 'aaba' nelja märgi palindroomiline jõud on vastavalt 1ドル \cdot 5 = 5,ドル 2ドル \cdot 5 = 10,ドル 3ドル \cdot 3 = 9$ ja 4ドル \cdot 6 = 24$. Selgitus, miks esimese märgi palindroomiline jõud on 5ドル$: sõnest erinevaid märgikombinatsioone kustutades saame 8 võimalust, mis sisaldavad selle esimest märki, neist omakorda 5 tükki on palindroomid (märgitud tärniga): 'a...'*, 'a..a'*, 'a.b.', 'a.ba'*, 'aa..'*, 'aa.a'*, 'aab.', 'aaba'.

Jõudude ühendamise all pidasid palindroomid silmas, et nad panevad kõik oma bitid kokku ja on siis ülitugevad. Palindroomid ei arvestanud aga kahe asjaoluga.

Esiteks piirab nende jõudu programmeerimisvõistluste loodusseadus nimega Maagiline Moodul. Nagu kõik teavad, on Maagilise Mooduli väärtuseks 1ドル,000円,000円,007円$. Sõne iga koha palindroomilise jõu leidmisel tuleb tegelikult leida esialgse jõu jääk Maagilise Mooduliga jagades.

Teiseks annihileeruvad jõudude bitid omavahel, mistõttu ei saa nad kokku mitte jõudude summa, vaid $\text{XOR}$-tehte tulemuse. Sõne kõigi märkide palindroomiliste jõudude $\text{XOR}$i tulemust nimetatakse sõne palindroomiliseks jõuks.

입력

Tekstifaili esimesel real on sõne pikkus $N$ (1ドル \le N \le 3,000円$) ja teisel real $N$ väikesest ladina tähest ('a'\ldots'z') koosnev sõne.

출력

Tekstifaili ainsale reale väljastada sisendis antud sõne palindroomiline jõud.

제한

예제 입력 1

4
aaba

예제 출력 1

30

$(1 \cdot 5) \XOR (2 \cdot 5) \XOR (3 \cdot 3) \XOR (4 \cdot 6) = 5 \XOR 10 \XOR 9 \XOR 24 = 30$.

예제 입력 2

4
abcd

예제 출력 2

4

$(1 \cdot 1) \XOR (2 \cdot 1) \XOR (3 \cdot 1) \XOR (4 \cdot 1) = 1 \XOR 2 \XOR 3 \XOR 4 = 4$.

예제 입력 3

5
tcoct

예제 출력 3

60

$(1 \cdot 7) \XOR (2 \cdot 6) \XOR (3 \cdot 4) \XOR (4 \cdot 6) \XOR (5 \cdot 7) = 60$.

예제 입력 4

62
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

예제 출력 4

1025495382

힌트

출처

Olympiad > Estonian Informatics Olympiad > 2016-17 > First Selection Competition 3번

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /