이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 19688|회답: 5

[출처] 2014년 "블루 브리지 컵" 예비 시험 문제

[링크 복사]
게시됨 2014. 10. 16. 오후 3:34:10 | | | |
하단의 코드 답변을 참고하세요:
이 이야기를 들어보셨을 겁니다. 왕은 체스를 발명한 장관을 존경하며 무엇을 지불할지 물었고, 장관은 "우선 그러세요"라고 말했습니다1체커보드가 놓입니다1집 안에 밀 알갱이가 있어요2체커보드가 놓입니다2집 안에 밀 알갱이가 있어요3체커보드가 놓입니다4집 안에 밀 알갱이가 있어요4체커보드가 놓입니다8밀,......후자의 칸 수는 모든 체커보드 칸이 나올 때까지 이전 칸의 두 배 더 많아집니다(체스에서 흔한 일입니다64그리드).
왕은 그가 단지 밀 자루를 원한다고 생각하며 웃었다.
당시 조건에서는 정확히 계산할 수 없었지만, 추정치는 놀라웠습니다: 전 세계가 밀로 뒤덮여 있어도 충분하지 않을 것이죠!
컴퓨터를 사용해서 정확히 필요한 밀알갱이 수를 계산해 주세요.
     결과를 직접 출력하는 코드를 작성해 주세요.





이전의:내가 방금 본 대학생들을 위한 상위 10가지 금기
다음:Java 1장 지식 포인트
 집주인| 게시됨 2014. 10. 16. 오후 3:34:24 |
* 는 문자열의 모든 부분 문자열을 출력합니다 (부분 문자열에는 빈 문자열과 문자열 자체가 포함되지 않음),
* 예를 들어: 문자열 "abc"의 모든 부분 문자열: "a", "b", "c", "ab", "bc".
* 문자열 "abcd"의 모든 서브스트링: "a", "b", "c", "d", "ab", "bc", "cd", "abc", "bcd".
 집주인| 게시됨 2014. 10. 16. 오후 3:35:14 |
샤오메이는 블록 가지고 노는 걸 좋아해. 그녀는 블록들을 하나씩 높이가 다른 상자에 쌓았다.봐, 내가 벽을 쌓았어!그녀는 큰언니 샤오량에게 말했다.모든 블록을 같은 높이로 만들어야 해. 그래서 진짜 벽을 쌓는 거야.그녀가 대답했다. 잠시 생각한 끝에, 샤오메이는 그녀가 옳다고 생각했다. 그 후 블록들을 하나씩 재배치하기 시작했고, 마침내 모든 블록이 같은 높이가 되었다. 하지만 샤오메이는 게을러서 모든 블록을 같은 높이로 만들기 위해 최소한의 블록만 움직이고 싶어 한다. 도와줄 수 있어?


설명을 입력하세요:
입력은 여러 데이터 컬렉션을 포함합니다. 각 데이터 세트의 첫 번째 행은 정수입니다n는 샤오메이의 구성 요소들의 열 수를 나타냅니다. 두 번째 줄에는 다음과 같이 있습니다.n각 블록 열의 높이를 나타내는 정수들hi는 열에 가 있음을 나타냅니다.hI가 블록을 사용해요. 추정1≤≤501≤hi≤100.
블록의 총 수는 열의 수로 나누어집니다. 따라서 각 열은 동일한 높이로 쌓이는 것이 보장됩니다.
입력은 0으로 끝나며, 0은 입력 데이터로 사용되지 않습니다.
출력 설명:
각 데이터셋에 대해 해당 데이터셋의 일련번호를 출력하세요. 출력 예제를 참고하세요. 그 다음 "최소 이동 횟수는 k입니다."라는 문구를 출력하세요. 여기서 k는 이 블록들을 같은 높이로 이동시키는 데 걸리는 최소 횟수를 의미합니다.
각 데이터셋 후에 빈 행 하나씩 출력합니다.
입력 예시:
6
5 2 4 1 7 5
0
출력 샘플
세트 #1
최소 수는 5수입니다.

 집주인| 게시됨 2014. 10. 16. 오후 3:35:31 |
로봇 워킹
어느 어린이 궁전에서는 여러 대의 로봇 트롤리를 도입했습니다. 미리 입력된 지침을 받아들이고 그에 따라 행동할 수 있습니다. 트롤리의 기본 움직임은 매우 간단하며, 세 가지 유형이 있습니다: 왼쪽으로 돌기(L로 표시), 오른쪽으로 돌기(R로 표시), 그리고 몇 센티미터 앞으로 걷기(숫자를 직접 표시하기).

    예를 들어, 트롤리에 다음과 같은 명령어를 입력할 수 있습니다:

    15L10R5LRR10R20

    그 후 차는 15cm 직진한 뒤 왼쪽으로 돌고, 10cm 걷고, 다시 오른쪽으로 돌죠,...

    이 명령 문자열에 따라 차량이 출발점으로 돌아간 것은 쉽게 알 수 있습니다.

    당신의 임무는 다음과 같습니다: 프로그램을 작성하고, 사용자가 명령어를 입력하게 하면, 프로그램이 각 명령어가 실행된 후 트롤리 위치와 명령이 실행되기 전 트롤리 위치 사이의 직선 거리를 출력합니다.

[입출력 형식 요구사항]

    사용자는 먼저 정수 n(n<100)을 입력하는데, 이는 다음에 n개의 명령어가 나온다는 의미입니다.

    다음으로 n개의 지시를 입력하세요. 각 명령어는 L, R, 그리고 숫자(숫자는 0~100 사이의 정수)만으로 구성됩니다

    각 명령어는 256자를 넘지 않아야 합니다.

    프로그램은 n줄의 결과를 출력합니다.

    각 결과는 해당 명령을 실행하기 전후로 트롤리의 직선 거리를 나타냅니다. 소수점 2자리까지 반올림해야 합니다.

    예를 들어: 사용자 입력:
5
L100R50R10
3LLL5RR4L12
LL
100R
5L5L5L5

    그 후 프로그램은 다음과 같이 출력합니다:
102.96
9.06
0.00
100.00
0.00
 집주인| 게시됨 2014. 10. 16. 오후 3:36:08 |
숫자 게임을 맞혀보세요, 게임 규칙은 다음과 같습니다:
1. 플레이어가 1개를 내는0~9정수
2. 세 명의 플레이어가 차례로 숫자를 맞추며, 각자 한 라운드 동안 한 번씩 추측합니다
3. 한 라운드 후, 누군가 정답을 맞히면 게임이 종료되며, 아무도 맞히지 못하면 한 번도 맞출 때까지 다음 라운드를 진행합니다.
모든 플레이어가 참여하는 완전한 게임 과정을 시뮬레이션하는 코드를 작성하세요.
(프롬프트:자바언어math.random()이 함수는 보다 큰 함수를 반환할 수 있습니다.0그리고 그 이하1무작위 번호)
기준 출력은 다음과 같습니다(결과는 각 실행마다 다릅니다):


 집주인| 게시됨 2014. 10. 16. 오후 3:36:24 |
[카드를 똑같이 나눠줘]
N개의 카드 더미가 있고, 번호는 1,2,...,n입니다. 각 더미에는 여러 장의 카드가 있지만, 총 카드 수는 n의 배수여야 합니다. 어떤 더미든 여러 장의 카드를 가져가서 이동시킬 수 있습니다.
이동 규칙은 다음과 같습니다: 숫자 1에서 가져간 카드는 숫자 2가 있는 더미로만 이동할 수 있습니다; 번호가 n인 더미에서 뽑힌 카드는 n-1 번호가 매겨진 더미로만 이동할 수 있습니다; 다른 더미에서 가져온 카드는 인접한 왼쪽 또는 오른쪽 더미로 옮길 수 있습니다. 이제 각 더미에서 가장 적은 수의 카드를 만드는 방법을 찾아야 합니다.
예를 들어: n=4, 카드 더미 4개는 다음과 같습니다: (1) 9 (2) 8 (3) 17 (4) 6 목표를 달성하기 위해 세 번 이동: (3)에서 카드 4장을 뽑아 (4) 위에 놓고, (3)에서 (2)로, 그리고 (2)에서 (1)로 이동


힙 n의 수를 입력해 주세요:
4
각 힙의 초기 값을 입력해 주세요:
9 8 17 6

출력:
각 더미는 10개씩 4개 더미로 나뉘어 있습니다
최소 이동: 3회
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com