当前位置: 首页 > news >正文

做网站毕业设计存在的问题/互联网最赚钱的行业

做网站毕业设计存在的问题,互联网最赚钱的行业,做名片用哪个网站,静态网站举例题目: P3392 涂国旗 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 思路: 思路1 题中给出了几个限制条件,我想着去模拟一下这几个条件求解,用行头和行尾指针,每一行都求最优的方式去求解,当行数为3时三…
题目: P3392 涂国旗 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

思路:

思路1

题中给出了几个限制条件,我想着去模拟一下这几个条件求解,用行头和行尾指针,每一行都求最优的方式去求解,当行数为3时三行都是确定的,大于三行就先把头行和尾行确定下来,再用头尾指针去不断确定两边要涂的颜色(找到该行最多的色块,并且确定该行是否可以涂该色(颜色顺序不能被改变,白蓝红)),但是实现起来发现条件太多,过于繁琐,因为头尾指针所在的行就算确定了要涂的色,但是要和整个国旗的统一起来就很难,不能有一个统一的方法去计算,需要用许多的条件判断等,于是放弃。

思路2

求出所有中间行(因为头行和尾行的色块是确定的)的排列,再拿求出的排列和题目给的色块比较,得出最小的值,输出即可,问题是求出所有的色块排列最大次数是3^48这样下去必然超时,于是放弃。

思路3

同样是暴力,为什么我就是想不起来这种方式呢!!!国旗总共三种颜色,需要确定两个色块的分界,有分界了就去求当前国旗中三个色块区域不同于当前区域颜色的色块数量(比如第一个是白色,那么不同于白色的就计数下来,其他区域相同),通过遍历不同分界下的需要变更色块的数量,不断更新min就行,最后输出count(每次循环要重置)就可以。由于最多50行,所以三层循环也没问题。

实现

思路3实现

在写完代码后发现一直只有28分,这道题而且没有数据可以下载,一开始我以为是循环的索引控制的问题(我用的是下标从0开始),后来我就用从1开始,结果也不可以,折腾了好久才发现是因为忘记把计数器count重置了,不然count的数据都累加了,还怎么找出最小的值呢,真是太马虎了。

提到索引的控制不妨再说一点,一般情况下要么是从0开始,要么从1开始,前者符合计算机的设计,后者便于理解。

最外层循环的索引从0开始呢,就代表i所在的是白色分界且该分界属于白色区域,这点要注意

package LOQ.暴力枚举;import java.util.Scanner;/*** @Author Lunau* @Create 2022-10-08 10:26* @Description 遍历区域分界线,寻找最小变化的色块*/
public class P3392涂国旗 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int n = sc.nextInt(),m = sc.nextInt();String[][] strs = new String[n][m];sc.nextLine();for (int i=0;i<n;i++) {String s = sc.nextLine();strs[i] = s.split("");}int min = Integer.MAX_VALUE;//遍历白色区域可能的边界行for (int i=0;i<n-2;i++) {//遍历蓝色区域可能的边界行for (int j=i+1;j<n-1;j++) {int count = 0;//分别遍历三个区域for (int a=0;a<=i;a++) {  //行for (int tp=0;tp<m;tp++) { //列if (!strs[a][tp].equals("W")) {count ++;}}}for (int a=i+1;a<=j;a++) {for (int tp=0;tp<m;tp++) { //列if (!strs[a][tp].equals("B")) {count ++;}}}for (int a=j+1;a<n;a++) {for (int tp=0;tp<m;tp++) { //列if (!strs[a][tp].equals("R")) {count ++;}}}min = Math.min(min,count);}}System.out.println(min);}
}

思路1实现(半成品)

package LOQ.暴力枚举;import java.util.Scanner;/*** @Author Lunau* @Create 2022-10-08 10:26* @Description*/
public class P3392涂国旗 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int n = sc.nextInt(),m = sc.nextInt();String[][] strs = new String[n][m];sc.nextLine();for (int i=0;i<n;i++) {String s = sc.nextLine();strs[i] = s.split("");}//行头,行尾指针int p = 0,q = n-1;int count = 0;//遍历所有行for (int i=0;i<n/2;i++) {//第一行最后一行先涂色if (p==0&&q==n-1) {for (int j=0;j<m;j++) {//第一行涂白色if (!strs[p][j].equals("W")) {count++;}//最后一行涂红色if (!strs[q][j].equals("R")) {count++;}}p++;q--;}//中间行if (q-p>1) {}}}//n当前行,m总列数,flag标识要该行要涂的成的色块private static String searchMinColor(String[][] strs,int n,int m,String flag) {int count = 0;//计数器for (int i=0;i<m;i++) {}return flag;}
}
http://www.lbrq.cn/news/1319977.html

相关文章:

  • 苏州高端网站设计企业/免费外链工具
  • 承德市网站建设/阿里巴巴seo排名优化
  • 想学做网站学什么编程语言/google网站登录入口
  • 企业网站模板建设/百度用户服务中心电话
  • 北京网站建设东轩seo/关键词优化seo优化排名
  • 编辑html/排名轻松seo 网站
  • 杭州网站设计予尚/域名注册管理机构
  • 宝鸡做网站哪家好/aso优化方法
  • WordPress手机APP源码/怎样进行seo推广
  • 北戴河网站建设/青岛谷歌优化
  • 乐昌网站建设/香港seo公司
  • 东莞常平嘉华学校/360手机优化大师下载
  • 蕴川路上海网站建设/太原seo软件
  • 谁告诉你j2ee是做网站的/精准客户数据采集软件
  • 三星商城app下载/网站优化排名首页
  • b2b网站制作/网站没有友情链接
  • 网上做翻译兼职网站/今日最新消息
  • 网站建设新模式/磁力宝最佳搜索引擎入口
  • 网站建设公司问候语/友情链接检查工具
  • 中国的网站域名是什么/南京seo外包平台
  • 云空间免费空间/网站seo方法
  • 做自主外贸网站和后台费用多少/aso优化平台
  • 做网站用php还是java/腾讯营销平台
  • 怎嘛做网站/5188关键词挖掘
  • C#如何做简易网站/怎么样引流顾客到店方法
  • 最新的网站开发框架/抖音引流推广免费软件app
  • 网页设计实训体会/湖南优化电商服务有限公司
  • 仿站软件/百度搜索引擎广告位的投放
  • 电子网站风格设计/日结app推广联盟
  • 电商运营怎么做的/宁波seo排名外包
  • 数字化生产管理系统设计
  • 深入 Go 底层原理(十一):Go 的反射(Reflection)机制
  • LVGL + ESP-Brookesia 在Windows下的编译和运行
  • 8.1IO进程线程——文件IO函数
  • Android使用MediaProjectionManager获取游戏画面和投屏
  • 外卖“0元购”退场后,即时零售大战才刚开始