经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » 编程经验 » 查看文章
LeetCode 38. Count and Say
来源:cnblogs  作者:flowingfog  时间:2018/10/17 8:49:44  对本文有异议

分析

难度 易

来源

https://leetcode.com/problems/count-and-say/description/

题目

The count-and-say sequence is the sequence of integers with the first five terms as following:

  1. 1.     1
  1. 2.     11
  1. 3.     21
  1. 4.     1211
  1. 5.     111221

1 is read off as "one 1" or 11.

11 is read off as "two 1s" or 21.

21 is read off as "one 2, then one 1" or 1211.

Given an integer n where 1 ≤ n ≤ 30, generate the nth term of the count-and-say sequence.

Note: Each term of the sequence of integers will be represented as a string.

 

Example 1:

  1. Input: 1
  1. Output: "1"

Example 2:

  1. Input: 4
  1. Output: "1211"
  1. 解答
  1. 1 package LeetCode;
  2. 2
  3. 3 public class L38_CountAndSay {
  4. 4 public String countAndSay(int n) {
  5. 5 if(n<=0){
  6. 6 return null;
  7. 7 }
  8. 8 String res="1";//第一行结果
  9. 9 int len = 0;
  10. 10 for(int i=1;i<n;i++){//第二行及以后
  11. 11 int count=1;//数字出现次数
  12. 12 if(i==1){//第二行
  13. 13 res="11";
  14. 14 }else {//不加else的计划,第二行有res,还会接着构建,第二行的res就会成为原本第三行展示的内容
  15. 15 len = res.length();
  16. 16 StringBuilder sb = new StringBuilder();
  17. 17 for (int j = 1; j < len; j++) {//统计每个字符出现次数
  18. 18 if (res.charAt(j - 1) == res.charAt(j)) {
  19. 19 count++;
  20. 20 } else {
  21. 21 sb.append(count);
  22. 22 sb.append(res.charAt(j - 1));
  23. 23 count = 1;
  24. 24 }
  25. 25 }
  26. 26 sb.append(count);
  27. 27 sb.append(res.charAt(len - 1));
  28. 28 res = sb.toString();
  29. 29 }
  30. 30 }
  31. 31 return res;
  32. 32 }
  33. 33 public static void main(String[] args){
  34. 34 L38_CountAndSay l38=new L38_CountAndSay();
  35. 35 System.out.println(l38.countAndSay(4));
  36. 36 }
  37. 37 }?
 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号