原题大意:
编写程序输出一个数字序列str(不含0)中相邻数字之和为n的数字
如有
String str="1223456789";
int n=5;
结果应该是:
122
23
5
目前我只想到下面这个方法,但我觉得很笨,请同学们思考一下.
public class Test2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
p("1223456789111112345",5);
}
public static void p(String str,int n)
{
int sum=0;
String sn = "";
for(int j=0;j<str.length();j++)
{
for(int i=j;i<str.length();i++)
{
int currentNum = Integer.parseInt(str.substring(i,i+1));
sum+=currentNum;
sn +=currentNum;
if(sum>n)
{
sn="";
sum=0;
break;
}
if(sum==n)
{
System.out.println(sn);
sn="";
sum=0;
break;
}
}
}
}
}
分享到:
相关推荐
要找到一个字符串中连续重复次数最多的子串,我们需要遍历字符串并比较相邻的子串。算法大致可以分为以下几个步骤: 1. 初始化:设置两个变量,一个用于保存当前子串,另一个用于记录最大重复次数。此外,还需要一...
C语言中的字符串处理函数提供了丰富的功能,如`printf("%s", str)`用于打印字符串,`gets()`和`sprintf()`用于读写字符串,`strchr()`查找子串,`strstr()`查找字符串出现的位置等。 6.6 C语言字符串的输入输出 在...
- 如果一个字符串仅包含一个空格,如`S = " "`,它的长度是1,不同于空字符串(长度为0)。 4. **字符串的抽象数据类型(ADT)定义**: - ADT String 是用来描述字符串的数据结构,包含数据对象和数据关系。 - ...
- 将两个整数转换为字符串形式。 - 将两个字符串拼接后转为整数进行比较。 - 返回两个整数的差值,用于排序。 #### 3. 进阶思考 **优化方案:** - **使用Java内置的排序方法:** 可以使用`Arrays.sort`方法结合...
如果一个字符串比另一个短,我们更新`over`为`True`,并继续下一个字符串的比较。 ```python i=0 while True: j=0 while j (strs)-1: ... ``` 当内层循环结束时,我们需要检查是否所有字符串都已经比较完,...
在停车场的例子中,我们可以将每个停车位看作一个字符,停车场的整个布局可以表示为一个串。通过串的抽象数据类型,我们可以方便地进行各种操作,如查找空闲车位(查找空串)、登记车辆(插入操作)、移出车辆...
* STRING(n, str):构造由 n 个 str 第一个字符组成的字符串 * STRREVERSE(str):反转字符串 * SPLIT(str, delimiter, [limit, [compare]]):以分割字符串为分割标志将字符串转为字符数组 这些函数可以帮助开发者...
首先,串是字符的有限序列,可以为空(即空串)或者包含一个或多个字符。例如,`s='a1a2...an'`,其中`s`是串的标识,字符序列是串的值,每个`ai`代表串中的字符,而`n`表示串的长度。值得注意的是,串中的字符可以...
第四个调试题目要求将输入字符串中偶数位置的小写字母转换为大写字母。涉及知识点: - 字符比较:判断字符是否在小写字母范围内。 - 字符编码:了解ASCII码,知道小写字母到大写字母的偏移量。 - 字符串遍历:...
在计算机科学中,字符串是数据结构的一个重要组成部分,特别是在编程语言和算法分析中。这篇文档“计算机组成与结构:DS and AL_Lecture4_Strings.ppt”主要探讨了字符串的定义、表示法、实现以及相关的操作。以下是...
【数组和字符串基础】 数组是编程中非常基础且重要的数据结构,它允许程序员存储和管理一组相同类型的数据。数组在C++中定义时,需要指定数据类型、数组名称以及数组的大小(即常量表达式)。例如,定义一个整型...
在C++中,`char str[]`可以定义一个字符数组用于存放字符串。 - 字符串函数:C++标准库提供了如`strlen()`和`strcpy()`等处理字符串的函数。在实验中,`strcat()`函数用于连接两个字符串。 3. 算法: - 排序与...
3. 选择排序:每次从未排序的元素中找到最小(或最大)的一个,放到已排序序列的末尾,共进行n次这样的操作。时间复杂度始终为O(n^2)。 4. 快速排序:通过一次划分操作将序列分为两部分,然后递归地对这两部分进行...
这里定义了一个辅助函数str,计算并返回字符串的长度。 8. **字符串连接**:在C语言中,连接两个字符串通常需要动态分配内存或预先知道目标字符串的长度。函数fun演示了如何在已知目标字符串足够长的情况下,将两个...
- **杨辉三角**:一种数列排列方式,每一行首尾为1,其余数字等于上方两数字之和。 ### Linux操作系统基础 #### 为什么使用虚拟机? 虚拟机允许在一个物理机器上运行多个操作系统实例,如Windows、Linux、macOS等...
给定m个字符串和一个整数n,将字符串分割成以n为单位的段,如果最后一个段长度不足,则用0补齐至n位。 **示例输入输出:** - 输入: `123456789` 和 `8` - 输出: `12345678\n90000000` **解题思路:** 1. **读取...
在提供的代码段中,题目要求编写一个程序(P3-311.C),它能够接收两个字符串s1和s2作为输入,并将s2插入到s1中。具体来说,s2的每个字符都要插入到s1相应位置之后,如果s2比s1长,剩余的s2字符会附加到新s1的末尾...
数据结构中的串是一种特殊的数据类型,它由一个或多个字符组成,可以理解为字符的序列。在本PPT中,串被定义为一个抽象数据类型(ADT String),包括了数据对象、数据关系以及一系列基本操作。 数据对象D定义为包含...
这个问题要求我们编写一个名为`fun`的函数,该函数接收一个包含字母和星号`*`的字符串,并删除所有星号。在函数中,使用了两个指针`i`和`j`,`i`遍历整个字符串,如果当前字符不是星号,则将其复制到新的位置`j`,...