前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >未解决的编程题,我会一直想的,直到想到

未解决的编程题,我会一直想的,直到想到

作者头像
张凝可
发布2019-08-22 16:06:19
3020
发布2019-08-22 16:06:19
举报
文章被收录于专栏:技术圈

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/qq_27717921/article/details/52912207

题目一:

输入为01的二进制序列,对二进制序列进行切割,使得切割后转为10进制的各段加和的最大值最小

如101101111001

其实我就是想知道不同切割方案后各段的和的分布情况究竟是什么样子的

题目二:

2的i次幂+3的j次幂+5的k次幂的最小top15

题目三:

求一集合{1,2,3,4}的所有子集划分情况,总共有15种,分别有单元素{{1,2,3,4}}、双元素{{1}{2,3,4}}{{1,2}{3,4}}等三元素{{1}{23}{4}}{{12}{3}{4}}等及{{1,2,3,4}},这里没有

一一列举出来,但是大体就是这么个意思,以后会了就回来慢慢补充。

补充第一道题目,只是有了些许的思路,但是还存在一些

package TEXT; import java.util.ArrayList; import java.util.List; import java.util.Scanner; public class Text11 { //题目:求解10111分段后各段求和所有的可能性 private StringBuffer input; private ArrayList<Integer> listInts = new ArrayList<Integer>(); /*public Text11(){ readIn(); temp = new int[input.length()]; for(int i=0;i<input.length();i++){ temp[i] = input.charAt(i)-'0'; } }*/ /*private void readIn(){ Scanner in = new Scanner(System.in); temp = in.next(); input = new StringBuffer(temp); }*/ public void compute(int j,List<String> sb,int sum){ //感觉这个listInts中保存的数并不纯净 /* System.out.println("start+sum"+sum);*/ /*System.out.println(sb.size());*/ for(int i=j;i<sb.size();i++){ sb.add(i+1, ","); sum+=tranStr2(sb.subList(j, i+1)); sb.remove(i+1); compute(0,sb.subList(i+1, sb.size()),sum); listInts.add(sum);//这个listInts的添加位置是不是有问题,才导致添加的数据不仅仅是最终结果,还有一些中间结果 sum=0; /*System.out.println("between+sum"+sum);*/ /*List<String> tem = sb.subList(i+1, sb.size()); System.out.println(tem.size()); for(String s:tem){ System.out.println(s); }*/ /*System.out.println("next");*/ /*System.out.print(sb.subList(i+1, sb.size()).toString());*/ /*sum = tranStr(sb.toString());*/ /*System.out.println("end+sum"+sum);*/ } } public void printList(){ for(Integer ints:listInts){ System.out.println(ints); } } public int tranStr2(List<String> st){ int tempSum=0; for(int j=0;j<st.size();j++){ tempSum+=Math.pow(2, st.size()-1-j)*(Integer.parseInt(st.get(j))); } return tempSum; } public static void main(String[] args) { //listInts虽然可以包含到所有的解,但是包含的解却不够纯净。。需要改善 Text11 text = new Text11(); ArrayList<String>list = new ArrayList<String>(); list.add("1"); list.add("0"); list.add("1"); list.add("0"); list.add("0"); list.add("1"); list.add("1"); text.compute(0, list, 0); text.printList(); } }

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016年10月24日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档