157 lines
9.9 KiB
HTML
157 lines
9.9 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="ko">
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
<title>BOJ 15645 - Offline</title>
|
|
<style>
|
|
:root {
|
|
--bg: #fafaf8;
|
|
--paper: #ffffff;
|
|
--ink: #1e1f24;
|
|
--muted: #6a6d75;
|
|
--line: #d8dce3;
|
|
--accent: #0d6e6e;
|
|
--code-bg: #f4f6fb;
|
|
}
|
|
* { box-sizing: border-box; }
|
|
body {
|
|
margin: 0;
|
|
background:
|
|
radial-gradient(circle at 15% 0%, #f0efe9 0%, transparent 42%),
|
|
radial-gradient(circle at 85% 20%, #e7f1f2 0%, transparent 38%),
|
|
var(--bg);
|
|
color: var(--ink);
|
|
font-family: "Noto Sans KR", "Pretendard", "Apple SD Gothic Neo", sans-serif;
|
|
line-height: 1.65;
|
|
}
|
|
main {
|
|
max-width: 980px;
|
|
margin: 0 auto;
|
|
padding: 24px 16px 56px;
|
|
}
|
|
.header {
|
|
background: var(--paper);
|
|
border: 1px solid var(--line);
|
|
border-radius: 14px;
|
|
padding: 18px 20px;
|
|
margin-bottom: 18px;
|
|
}
|
|
.header h1 { margin: 0 0 6px; font-size: 1.5rem; }
|
|
.header p { margin: 0; color: var(--muted); font-size: 0.95rem; }
|
|
.header a { color: var(--accent); text-decoration: none; }
|
|
.section {
|
|
background: var(--paper);
|
|
border: 1px solid var(--line);
|
|
border-radius: 14px;
|
|
padding: 16px 18px;
|
|
margin-bottom: 14px;
|
|
overflow-x: auto;
|
|
}
|
|
h2 {
|
|
margin: 0 0 10px;
|
|
font-size: 1.05rem;
|
|
color: var(--accent);
|
|
border-bottom: 1px solid var(--line);
|
|
padding-bottom: 8px;
|
|
}
|
|
pre, code {
|
|
font-family: "JetBrains Mono", "Fira Code", monospace;
|
|
background: var(--code-bg);
|
|
}
|
|
pre {
|
|
padding: 12px;
|
|
border-radius: 10px;
|
|
border: 1px solid #e7ebf2;
|
|
overflow: auto;
|
|
}
|
|
blockquote {
|
|
margin: 14px 0;
|
|
padding: 16px 16px 14px 22px;
|
|
border-left: 4px solid var(--accent);
|
|
border-radius: 10px;
|
|
background: linear-gradient(90deg, #eef8f8 0%, #f9fdfd 100%);
|
|
color: #24313a;
|
|
font-weight: 600;
|
|
position: relative;
|
|
}
|
|
blockquote::before {
|
|
content: "“";
|
|
position: absolute;
|
|
left: 8px;
|
|
top: 2px;
|
|
font-size: 1.35rem;
|
|
line-height: 1;
|
|
color: #0b5f5f;
|
|
opacity: 0.7;
|
|
}
|
|
blockquote > :first-child { margin-top: 0; }
|
|
blockquote > :last-child { margin-bottom: 0; }
|
|
q {
|
|
color: #114f50;
|
|
font-weight: 700;
|
|
background: #edf8f8;
|
|
border-radius: 6px;
|
|
padding: 0 4px;
|
|
}
|
|
.math-inline math {
|
|
font-size: 1em;
|
|
vertical-align: middle;
|
|
}
|
|
.math-block {
|
|
margin: 10px 0;
|
|
padding: 8px 10px;
|
|
overflow-x: auto;
|
|
background: #f8fbff;
|
|
border: 1px solid #e2ecf8;
|
|
border-radius: 8px;
|
|
}
|
|
.math-block math {
|
|
font-size: 1.04em;
|
|
display: block;
|
|
}
|
|
table { border-collapse: collapse; width: 100%; }
|
|
th, td { border: 1px solid var(--line); padding: 6px 8px; }
|
|
img { max-width: 100%; height: auto; }
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<main>
|
|
<header class="header">
|
|
<h1>내려가기 2</h1>
|
|
</header>
|
|
<article class="section">
|
|
<h2>문제</h2>
|
|
<p>N줄에 0 이상 9 이하의 숫자가 세 개씩 적혀 있다. 내려가기 게임을 하고 있는데, 이 게임은 첫 줄에서 시작해서 마지막 줄에서 끝나게 되는 놀이이다.</p>
|
|
|
|
<p>먼저 처음에 적혀 있는 세 개의 숫자 중에서 하나를 골라서 시작하게 된다. 그리고 다음 줄로 내려가는데, 다음 줄로 내려갈 때에는 다음과 같은 제약 조건이 있다. 바로 아래의 수로 넘어가거나, 아니면 바로 아래의 수와 붙어 있는 수로만 이동할 수 있다는 것이다. 이 제약 조건을 그림으로 나타내어 보면 다음과 같다.</p>
|
|
|
|
<p><img alt="" src="data:image/png;base64,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" /></p>
|
|
|
|
<p>별표는 현재 위치이고, 그 아랫 줄의 파란 동그라미는 원룡이가 다음 줄로 내려갈 수 있는 위치이며, 빨간 가위표는 원룡이가 내려갈 수 없는 위치가 된다. 숫자표가 주어져 있을 때, 얻을 수 있는 최대 점수, 최소 점수를 구하는 프로그램을 작성하시오. 점수는 원룡이가 위치한 곳의 수의 합이다.</p>
|
|
</article>
|
|
<article class="section">
|
|
<h2>입력</h2>
|
|
<p>첫째 줄에 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 숫자가 세 개씩 주어진다. 숫자는 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 중의 하나가 된다.</p>
|
|
</article>
|
|
<article class="section">
|
|
<h2>출력</h2>
|
|
<p>첫째 줄에 얻을 수 있는 최대 점수와 최소 점수를 띄어서 출력한다.</p>
|
|
</article>
|
|
<article class="section">
|
|
<h2>예제 입력 1 복사</h2>
|
|
<pre class="sampledata" id="sample-input-1">3
|
|
1 2 3
|
|
4 5 6
|
|
4 9 0
|
|
</pre>
|
|
</article>
|
|
<article class="section">
|
|
<h2>예제 출력 1 복사</h2>
|
|
<pre class="sampledata" id="sample-output-1">18 6
|
|
</pre>
|
|
</article>
|
|
</main>
|
|
</body>
|
|
</html>
|