yukicoder-434

从 Trac 迁移的文章

这是从旧校内 Wiki 迁移的文章,可能存在一些样式问题,您可以向 memset0 反馈。

原文章内容如下:

{{{
#!html
<script type="text/x-mathjax-config">MathJax.Hub.Config({tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']]}});</script>
<script type="text/javascript" async src="http://10.71.10.90/sfiction/tool/MathJax/MathJax-master/MathJax.js?config=TeX-MML-AM_CHTML"></script>
<style>
.input, pre {
    display: block;
    padding: 9.5px;
    margin: 0 0 10px;
    font-size: 13px;
    line-height: 1.42857143;
    color: #333;
    word-break: break-all;
    word-wrap: break-word;
    background-color: #f5f5f5;
    border: 1px solid #ccc;
    border-radius: 4px;
}
</style>
}}}

== [https://yukicoder.me/problems/no/434 No.434 占い] ==

=== Description ===

{{{
#!html
<p>考虑一个只包含$0$到$9$的数列$S=\{s_1,s_2,...,s_N\}$,进行如下操作
<ol>
<li>假设$S$的长度是$K$,如果$K=1$,结束操作</li>
<li>对于$S$中相邻的两个数$s_i$和$s_{i+1}$ ($1 \le i \le K - 1$),令它们的和是$s^\prime_{i}$。</li>
<li>如果$s^\prime_{i} \ge 10$,那么用十位和个位的和做替换(例如:$s^\prime_{i}=13$的话,$s^\prime_{i}=1+3=4$)。</li>
<li>把$S$变为$\{s^\prime_1,s^\prime_2,...,s_{K-1}\}$。</li>
<li>重复操作1.</li>
</ol>
</p>

<p>求操作结束后,最后剩下来的那个数的值。</p>

<p>例如$S={3,5,8,2}$的时候,$S$的变化如下:$\{3,5,8,2\} \to \{8, 4, 1\} \to \{3, 5\} \to \{8\}$。</p>
}}}

=== Input ===

{{{
#!html
<p class="input">
$T$<br>
$S_1$<br>
$S_2$<br>
$\vdots$<br>
$S_T$<br>
</p>
<p>$1 \le T \le 10^5, 1 \le |S_i|, \sum\limits_{i=1}^{T} |S_i| \le 10^5$。</p>
}}}

=== Output ===

对于每组数据,输出最后剩下来的那个数。

=== Sample ===

==== Sample 1 ====
输入
{{{
#!html
<pre>
1
3582
</pre>
}}}
输出
{{{
#!html
<pre>
8
</pre>
}}}

==== Sample 2 ====
输入
{{{
#!html
<pre>
10
0
1
2
3
4
5
6
7
8
9
</pre>
}}}
输出
{{{
#!html
<pre>
0
1
2
3
4
5
6
7
8
9
</pre>
}}}

==== Sample 3 ====
输入
{{{
#!html
<pre>
10
09
18
27
36
45
54
63
72
81
90
</pre>
}}}
输出
{{{
#!html
<pre>
9
9
9
9
9
9
9
9
9
9
</pre>
}}}

==== Sample 4 ====
输入
{{{
#!html
<pre>
10
3735193991
6406080286
5191117191
9096163630
2612780068
3850187272
6329054969
8747630709
5278943458
4022606808
</pre>
}}}
输出
{{{
#!html
<pre>
1
3
3
9
7
8
9
2
1
9
</pre>
}}}

No.434 占い

Description

考虑一个只包含$0$到$9$的数列$S=\{s_1,s_2,...,s_N\}$,进行如下操作

  1. 假设$S$的长度是$K$,如果$K=1$,结束操作
  2. 对于$S$中相邻的两个数$s_i$和$s_{i+1}$ ($1 \le i \le K - 1$),令它们的和是$s^\prime_{i}$。
  3. 如果$s^\prime_{i} \ge 10$,那么用十位和个位的和做替换(例如:$s^\prime_{i}=13$的话,$s^\prime_{i}=1+3=4$)。
  4. 把$S$变为$\{s^\prime_1,s^\prime_2,...,s_{K-1}\}$。
  5. 重复操作1.

求操作结束后,最后剩下来的那个数的值。

例如$S={3,5,8,2}$的时候,$S$的变化如下:$\{3,5,8,2\} \to \{8, 4, 1\} \to \{3, 5\} \to \{8\}$。

Input

$T$
$S_1$
$S_2$
$\vdots$
$S_T$

$1 \le T \le 10^5, 1 \le |S_i|, \sum\limits_{i=1}^{T} |S_i| \le 10^5$。

Output

对于每组数据,输出最后剩下来的那个数。

Sample

Sample 1

输入

13582

输出

8
Sample 2

输入

100123456789

输出

0123456789
Sample 3

输入

1009182736455463728190

输出

9999999999
Sample 4

输入

103735193991640608028651911171919096163630261278006838501872726329054969874763070952789434584022606808

输出

1339789219