【杭电oj2017】字符串统计

本题要求编写程序,统计给定字符串中数字字符的出现次数。输入包含多个测试实例,每个实例为一个混合了字母和数字的字符串;输出对应每个字符串中数字字符的数量。

字符串统计

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 68606    Accepted Submission(s): 37673


Problem Description
对于给定的一个字符串,统计其中数字字符出现的次数。
 

Input
输入数据有多行,第一行是一个整数n,表示测试实例的个数,后面跟着n行,每行包括一个由字母和数字组成的字符串。
 

Output
对于每个测试实例,输出该串中数值的个数,每个输出占一行。
 

Sample Input
  
2 asdfasdf123123asdfasdf asdf111111111asdfasdfasdf
 

Sample Output
  
6 9
 

Author
lcy
 

Source
 

Recommend
lcy   |   We have carefully selected several similar problems for you:   1001  1000  1008  1073  1004 
 
#include<stdio.h>
#include<string.h>
int main() {
    char str[10000];
    int i,j,n;
    scanf("%d",&n);
    getchar();
    for(i=1;i<=n;i++)
    {
        int k=0;
        gets(str);
        for(j=0;j<strlen(str);j++)
        if(str[j]=='0'||str[j]=='1'||str[j]=='2'||str[j]=='3'||str[j]=='4'||str[j]=='5'||str[j]=='6'||str[j]=='7'||str[j]=='8'||str[j]=='9')
        k++;
        printf("%d",k);
        printf("\n");
}
    return 0;
}

题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=2017
### 杭电OJ问题2026分析 杭电在线评测系统(HDU OJ)中的Problem 2026是一个经典的算法题目,通常涉及字符串处理或简单的逻辑判断。根据已知的信息[^1],该问题的核心在于理解输入数据的特点以及如何高效地完成特定的任务。 #### 题目描述 虽然具体的题目描述未提供,但基于常见的HDU OJ风格,可以推测此题可能要求实现某种字符串匹配或者数值计算功能。一般情况下,这类问题会给出一组或多组测试样例,并要求程序能够正确解析并输出预期的结果。 #### 解决方案概述 以下是解决此类问题的一种通用方法: 1. **读取输入**: 使用标准输入流获取多组测试数据。 2. **处理逻辑**: 对每组数据执行必要的操作,比如字符替换、统计频率或其他简单变换。 3. **输出结果**: 将最终答案按照指定格式打印出来。 下面展示了一段Python代码作为示例解答之一: ```python import sys def process_data(input_line): """自定义的数据处理函数""" result = "" # 假设这里需要对input_line做一些转换, 如反转字符串 result = input_line[::-1] return result if __name__ == "__main__": lines = [] try: while True: line = sys.stdin.readline().strip() if not line: break processed_result = process_data(line) print(processed_result) except Exception as e: pass ``` 上述脚本展示了如何从标准输入读取多行文字并对它们逐一应用`process_data()`函数来生成对应的输出。需要注意的是实际参赛者应当依据具体赛题调整内部实现细节。 #### 性能优化建议 对于大规模数据集而言,效率至关重要。因此,在编写解决方案时应考虑以下几个方面: - 减少不必要的内存分配动作; - 利用内置库提高运行速度; - 如果适用的话,则采用更高级别的抽象结构代替手动循环迭代。
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值