RiseOJ는 solved.ac와 제휴 관계가 없습니다. 티어 아이콘 © solved.ac. solved.ac
포럼
USACO0244 파일 입출력

Block Game

Bronze I 브론즈 I
난이도
2s
시간 제한
256MB
메모리 제한
0
맞았습니다!!
0
제출 수
0.0%
정답률
레이팅

의견: 0

설명

Farmer John is trying to teach his cows to read by giving them a set of \(N\)
spelling boards typically used with preschoolers (\(1 \leq N \leq 100\)). Each
board has a word and an image on each side. For example, one side might have
the word 'cat' along with a picture of a cat, and the other side might have the
word 'dog' along with a picture of a dog. When the boards are lying on the
ground, \(N\) words are therefore shown. By flipping over some of the boards, a
different set of \(N\) words can be exposed.

To help the cows with their spelling, Farmer John wants to fashion a number of
wooden blocks, each embossed with a single letter of the alphabet. He wants to
make sufficiently many blocks of each letter so that no matter which set of \(N\)
words is exposed on the upward-facing boards, the cows will be able to spell all
of these words using the blocks. For example, if \(N=3\) and the words 'box',
'cat', and 'car' were facing upward, the cows would need at least one 'b' block,
one 'o' block, one 'x' block, two 'c' blocks, two 'a' blocks, one 't' block, and
one 'r' block.

Please help the Farmer John determine the minimum number of blocks for each
letter of the alphabet that he needs to provide, so that irrespective of which
face of each board is showing, the cows can spell all \(N\) visible words.

Problem credits: Viktoriia Schwartz

제약

Problem credits: Viktoriia Schwartz

입력 형식

Line 1 contains the integer \(N\).

The next \(N\) lines each contain 2 words separated by a space, giving the two
words on opposite sides of a board. Each word is a string of at most 10
lowercase letters.

출력 형식

Please output 26 lines. The first output line should contain a number specifying
the number of copies of 'a' blocks needed. The next line should specify the
number of 'b' blocks needed, and so on.

파일 입력 / 출력
이 문제는 표준 입출력을 사용하지 않습니다. 프로그램은 다음 파일을 읽고 써야 합니다:
입력을 읽을 파일 blocks.in
출력을 쓸 파일 blocks.out
예제 1
입력
3
fox box
dog cat
car bus
출력
2
2
2
1
0
1
1
0
0
0
0
0
0
0
2
0
0
1
1
1
1
0
0
1
0
0
설명

In this example, there are \(N = 3\) boards, giving \(2^3 = 8\) possibilities for
the set of upward-facing words:

fox dog car
fox dog bus
fox cat car
fox cat bus
box dog car
box dog bus
box cat car
box cat bus

We need enough blocks for each letter of the alphabet so that we can spell all
three words, irrespective of which of these eight scenarios occurs.

문제 정보

riseoj 작성

출처 올림피아드 > USACO > 2016-2017 > December > Bronze

태그

평가 및 의견

Block Game

개요
출제자 난이도 Bronze I 브론즈 I 의견 0 / 50 공개 집계 (커뮤니티 난이도, 주요 주제, 품질)는 의견이 충분히 모이면 공개됩니다.

Log in to rate problems.

개별 의견

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

풀이 제출

Block Game

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