RiseOJ는 solved.ac와 제휴 관계가 없습니다. 티어 아이콘 © solved.ac. solved.ac
포럼
문제 JOI00194

部活のスケジュール表 (Schedule)

설명

IOI 高校のプログラミング部には,J 君と O 君と I 君の 3 人の部員がいる.
プログラミング部では,部活のスケジュールを組もうとしている.

今,N 日間の活動のスケジュールを決めようとしている.
各活動日のスケジュールとして考えられるものは,各部員については活動に参加するかどうかの 2 通りがあり,部としては全部で 8 通りある.
部室の鍵はただ 1 つだけであり,最初は J 君が持っている.
各活動日には,その日の活動に参加する部員のうちのいずれか 1 人が鍵を持っている必要があり,活動後に参加した部員のいずれかが鍵を持って帰る.

プログラミング部では,活動日には毎回必ず活動が行われるように,あらかじめ各活動日の責任者を定めた.
責任者は,必ずその日の活動に出席しなければならない.

スケジュールを決めようとしている日数と,各活動日の責任者が誰であるかの情報が与えられた時,すべての活動日に部活動を行うことができるようなスケジュール表として考えられるものの数を 10007 で割った余りを求めるプログラムを作成せよ.
ただし,部活の終了時に鍵を持って帰る部員は,その日の活動に参加している部員の誰でもよく,最終日は誰が鍵を持って帰ってもよいものとする.

제약
입력 형식

入力は,2 行からなる.

1 行目には,スケジュールを決めようとしている日数を表す 1 つの整数 N (2 ≦ N ≦ 1000) が書かれている.

2 行目には,各活動日の責任者を表す N 文字からなる文字列が書かれている.
この文字列の i 文字目 (1 ≦ i ≦ N) は,i 日目の活動日の責任者を表す.
すなわち,i 文字目が J, O, I であることはそれぞれ i 日目の活動日の責任者が J 君,O 君,I 君であることを意味する.

출력 형식

スケジュール表として考えられるものの数を 10007 で割った余りを 1 行で出力せよ.

예제 1
입력
2
OI
출력
7
문제 정보

생성자가 기록되지 않았습니다.

출처 JOI 2014 Preliminary

평가 및 의견

部活のスケジュール表 (Schedule)

개요
출제자 난이도 Unrated 레이팅 미적용 의견 0 / 50 공개 집계 (커뮤니티 난이도, 주요 주제, 품질)는 의견이 충분히 모이면 공개됩니다.

Log in to rate problems.

개별 의견

아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.

풀이 제출

部活のスケジュール表 (Schedule)

게스트로 둘러보고 있습니다. 로그인하면 풀이를 제출하고 진행 상황을 확인할 수 있습니다. 로그인하고 제출하기
공개
C++20 Tab 들여쓰기 · Ctrl+/ 주석 토글 · Enter 자동 들여쓰기
1 1 1 0 공백: 4 · UTF-8