字符个数统计
有勇气的牛排
786
算法
2022-06-22 13:06:31
知识点:字符串
、哈希
描述
编写一个函数,计算字符串中含有的不同字符的个数。字符在 ASCII 码范围内(0~127,包括0和127),换行表示结束符,不算在字符里。不在范围内的不作统计。多个相同的字符只计算一次
例如,对于字符串 abaca 而言,有 a、b、c 三种不同的字符,因此输出3。
数据范围:1≤n≤500
输入描述:
输入一行没有空格的字符串。
输出描述:
输出 输入字符串 中范围在(0~127,包括0和127)字符的种数。
示例1
输入:abc
输出:3
输入:aaa
输出:1
牛客HJ python3
str_list = list(set(input()))
conut = 0
for i in str_list:
if 0 <= ord(i) <= 127:
conut += 1
print(conut)
str_list = list(set(input()))
res_list = []
for i in str_list:
if 0 <= ord(i) <= 127:
res_list.append(i)
print(len(res_list))
<p>知识点:<code>字符串</code>、<code>哈希</code></p>
<p><strong>描述</strong><br />
编写一个函数,计算字符串中含有的不同字符的个数。字符在 ASCII 码范围内(0~127,包括0和127),换行表示结束符,不算在字符里。不在范围内的不作统计。多个相同的字符只计算一次<br />
例如,对于字符串 abaca 而言,有 a、b、c 三种不同的字符,因此输出3。</p>
<p>数据范围:1≤n≤500</p>
<p><strong>输入描述:</strong><br />
输入一行没有空格的字符串。</p>
<p><strong>输出描述:</strong><br />
输出 输入字符串 中范围在(0~127,包括0和127)字符的种数。</p>
<p><strong>示例1</strong></p>
<pre><div class="hljs"><code class="lang-shell">输入:abc
输出:3
</code></div></pre>
<pre><div class="hljs"><code class="lang-shell">输入:aaa
输出:1
</code></div></pre>
<p>牛客HJ python3</p>
<pre><div class="hljs"><code class="lang-python"><span class="hljs-comment"># 方法一 28ms</span>
str_list = <span class="hljs-built_in">list</span>(<span class="hljs-built_in">set</span>(<span class="hljs-built_in">input</span>())) <span class="hljs-comment"># 输入、去重、转列表</span>
<span class="hljs-comment"># 开始计数</span>
conut = <span class="hljs-number">0</span>
<span class="hljs-keyword">for</span> i <span class="hljs-keyword">in</span> str_list:
<span class="hljs-keyword">if</span> <span class="hljs-number">0</span> <= <span class="hljs-built_in">ord</span>(i) <= <span class="hljs-number">127</span>: <span class="hljs-comment"># 判断ASCII码 是否符合要求</span>
conut += <span class="hljs-number">1</span>
<span class="hljs-built_in">print</span>(conut)
</code></div></pre>
<pre><div class="hljs"><code class="lang-python"><span class="hljs-comment"># 方法二 30ms</span>
str_list = <span class="hljs-built_in">list</span>(<span class="hljs-built_in">set</span>(<span class="hljs-built_in">input</span>())) <span class="hljs-comment"># 输入、去重、转列表</span>
<span class="hljs-comment"># 开始计数</span>
res_list = []
<span class="hljs-keyword">for</span> i <span class="hljs-keyword">in</span> str_list:
<span class="hljs-keyword">if</span> <span class="hljs-number">0</span> <= <span class="hljs-built_in">ord</span>(i) <= <span class="hljs-number">127</span>: <span class="hljs-comment"># 判断ASCII码 是否符合要求</span>
res_list.append(i)
<span class="hljs-built_in">print</span>(<span class="hljs-built_in">len</span>(res_list))
</code></div></pre>
留言