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

阿里云空间可以做网站吗diy图片制作

阿里云空间可以做网站吗,diy图片制作,wordpress 音乐页面,北京 网站建设B - Milena and Admirer Problem - B - Codeforces 题目大意#xff1a; 现在给出一个无序序列#xff0c;你可以使用任意次操作将这个无序序列修改为不递减序列#xff0c;操作为你可以使用两个数a和b来替换ai#xff0c;序列就变为了 ai-1#xff0c; a#xff0c;…B - Milena and Admirer  Problem - B - Codeforces 题目大意 现在给出一个无序序列你可以使用任意次操作将这个无序序列修改为不递减序列操作为你可以使用两个数a和b来替换ai序列就变为了 ai-1 abai1。求将这个序列修改为不递减序列的最少操作次数。 我比赛时的错误思路标红的是正确的 对这个序列进行修改操作时应该从后往前进行修改因为他是不递减序列所以我们只要保证后面满足条件然后一直向前调整即可。这个思路是对的但是我刚开始想的是要让操作次数较少应该要尽量2分这个不合理的数让其变为合理的。所以如果是93。我的这个操作就会修改为22233进行3次修改操作。然后我突然发现3333.只会进行两次修改操作。所以思路应该为均分这个不合理的数。让他均分后小于他后面的数均分还能保证他对前面的限制条件放松来使操作次数进一步减小。 代码 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.StreamTokenizer; import java.util.HashMap;/*** ProjectName: study3* FileName: Ex15* author:HWJ* Data: 2023/11/19 23:05*/ public class Ex15 {static int[] arr;static long total 0;static HashMapInteger, Integer map new HashMap();public static void main(String[] args) throws IOException {StreamTokenizer in new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));in.nextToken(); int n (int) in.nval;for (int o 0; o n; o) {total 0;in.nextToken();int m (int) in.nval;arr new int[m];for (int i 0; i m; i) {in.nextToken();arr[i] (int) in.nval;}for (int i m - 2; i 0; i--) {if (arr[i] arr[i 1]) {// 尽量arr[i]均分为arr[i1]的大小。int cnt (arr[i] arr[i 1] - 1) / arr[i 1];total cnt - 1; // 均分为cnt份需要cnt-1次。arr[i] / cnt;}}System.out.println(total);}} }Colorful Grid Problem - C - Codeforces 题目大意 现在给出一个方格n行m列你可以将这个方格的任意一条边修改为红色或者蓝色然后需要从11这个点前往到nm这个点要求在前往路程中走完蓝色的边下一次走的边应该为红色的边走完红色的边下一次走的边应该为蓝色。然后在满足这个要求的情况下如果经过了k条边我们则称这次的路程长度为k。边可以重复经过现在给出n m k。问你有没有一个染色方案可以使从起点到终点的路径长度为k。 思路 对于一个方格他的最短路径应该为nm-2然后我们如果要判断k这个路程长度能不能到达那可以想到我们应该走多组无效路程然后一组无效路程应该长度为2。所以k应该和nm-2保持同样的奇偶性。所以他最后可能是多走了奇数组或者偶数组。那么最后就相当于多走一组奇数组或者没有多走偶数组所以我们可以构造一个正方形让他在浪费一组和不浪费的情况下都能前往终点。这里给出代码可以根据代码画图帮组理解 代码 import java.util.HashMap; import java.util.Objects; import java.util.Scanner;/*** ProjectName: study3* FileName: Ex16* author:HWJ* Data: 2023/11/20 12:28*/ public class Ex16 {static HashMapEdge, Character map new HashMap();public static void main(String[] args) {Scanner input new Scanner(System.in);int t input.nextInt();for (int o 0; o t; o) {int n input.nextInt();int m input.nextInt();int k input.nextInt();int mn n m - 2; // 所需要使用的最少边数// 因为k如果大于最少边数他就只能一直重复走某些路径 但重复的时候肯定会重复多组边// 一组边会增加两次所以k应该和最少边数保持同样的奇偶性if (k mn || (k % 2) ! (mn % 2)){System.out.println(No);}else {System.out.println(Yes);for (int i 1; i n; i) { // 这里将整个图的边全部染为红色for (int j 1; j m; j) {if (j 1 m) map.put(new Edge(new Node(i,j), new Node(i,j1)), R);if (i 1 n) map.put(new Edge(new Node(i,j), new Node(i1,j)), R);}}map.put(new Edge(new Node(1,1), new Node(2,1)), B);map.put(new Edge(new Node(1,2), new Node(2,2)), B);map.put(new Edge(new Node(1,3), new Node(2,3)), B);map.put(new Edge(new Node(2,2), new Node(3,2)), B);// 构造一个正方行的红蓝圈让他一直在里面绕并且可以在某个半圈或者一圈使退出正方形圈boolean f false;// 这里构造使任意一个退出的地方都一定能走到终点。for (int i 3; i m; i) {map.put(new Edge(new Node(3,i), new Node(3,i1)), f ? R : B);f !f;}for (int i 3; i n; i) {map.put(new Edge(new Node(i,m), new Node(i1,m)), f ? R : B);f !f;}for (int i 1; i n; i) {for (int j 1; j m; j) {System.out.print(map.get(new Edge(new Node(i,j),new Node(i,j1))) );}System.out.println();}for (int i 1; i n; i) {for (int j 1; j m; j) {System.out.print(map.get(new Edge(new Node(i,j),new Node(i1,j))) );}System.out.println();}}}}public static class Edge{Node s;Node e;public Edge(Node s, Node e){this.s s;this.e e;}Overridepublic boolean equals(Object o) {if (this o) return true;if (o null || getClass() ! o.getClass()) return false;Edge edge (Edge) o;return Objects.equals(s, edge.s) Objects.equals(e, edge.e);}Overridepublic int hashCode() {return Objects.hash(s, e);}}public static class Node{int col;int row;public Node(int row, int col){this.col col;this.row row;}Overridepublic boolean equals(Object o) {if (this o) return true;if (o null || getClass() ! o.getClass()) return false;Node node (Node) o;return col node.col row node.row;}Overridepublic int hashCode() {return Objects.hash(col, row);}} }D. Absolute Beauty  Problem - D - Codeforces 题目大意 给出两个整数序列a和b。得分为|ai - bi|之和。现在你可以进行至多一次操作使得得分最大。操作为选择任意bi 和 bj让其交换位置。 思路 对于a序列和b序列因为得分是计算绝对值且最多只能交换一次所以ai和bi互换位置是对答案没有影响。则我们可以通过互换位置使得任意i位置上的ai一定大于等于bi。 这可以将绝对值表示的意义想象为这个线段的长度。 对于任意几个线段有三个情况。只有第一种情况的交换会使绝对值之和增加。又因为只能进行一次交换操作所以我们应该使第一种情况下的a1尽可能小b2尽可能大。 则答案增量为2*maxb- mina  代码 import java.util.Scanner;/*** ProjectName: study3* FileName: Ex17* author:HWJ* Data: 2023/11/21 9:29*/ public class Ex17 {public static void main(String[] args) {Scanner input new Scanner(System.in);int t input.nextInt();for (int o 0; o t; o) {int n input.nextInt();int[][] a new int[n][2];long total 0;int max 0;int min Integer.MAX_VALUE;for (int i 0; i n; i) {a[i][0] input.nextInt();}for (int i 0; i n; i) {a[i][1] input.nextInt();if (a[i][1] a[i][0]){int tmp a[i][1];a[i][1] a[i][0];a[i][0]tmp;}max Math.max(max, a[i][1]);min Math.min(min, a[i][0]);total a[i][0] - a[i][1];}System.out.println(Math.max(total, total 2L *(max - min)));}} }E. Sofia and Strings Problem - E - Codeforces 题目大意 给你两个字符串S和T,数字n和mn和m分别为字符串S和T的长度你可以对字符串S进行操作使其变为字符串T。如果能变为字符串T则输出YES否则输出NO。 操作为 1. 选择 i1 i n)将字符串S这个位置上的字符删掉。 2. 选择 l 和 r ( 1 l r n),将字符串S [ lr] 这段位置上的字符按照字典序进行排序。 思路 因为他是按照字典序进行排序那么字典序小的字符没有办法修改到字典序大的字符后面。 则给出一个样例 S abcdgef T : efg 遍历TT1为e可以找到它在S的位置为S5S5前面的abcd已经对后序的整个操作是无效的了。 所以修改S T为 S gf Tfg 遍历TT1为f可以找到它在S的位置为S2S2前面的g对后序的操作是有效的保留。 所以修改S T为 S g Tg .........这样的修改策略就可以判断S是否能修改为T。但是如果用遍历来寻找对应位置和是否删除是不明智的因为时间开销太大了。所以我们可以使用队列来实现。因为删除时只删除对应位置和对应位置前面字典序小于当前字典序的字符。满足先进先出的特性位置靠前的先进行删除操作。 代码 import java.util.LinkedList; import java.util.Scanner;/*** ProjectName: study3* FileName: Ex18* author:HWJ* Data: 2023/11/21 12:01*/ public class Ex18 {public static void main(String[] args) {Scanner input new Scanner(System.in);int t input.nextInt();for (int o 0; o t; o) {int n input.nextInt();int m input.nextInt();String str1 input.next();String str2 input.next();char[] s1 str1.toCharArray();char[] s2 str2.toCharArray();LinkedListInteger[] set new LinkedList[27];for (int i 0; i 27; i) {set[i] new LinkedList();}for (int i 0; i n; i) {set[s1[i] - a].add(i);}boolean loop true;for (int i 0; i m; i) {if (set[s2[i] - a].isEmpty()){loop false;break;}int now set[s2[i] - a].removeFirst();for (int j 0; j s2[i] - a; j) {while (!set[j].isEmpty() set[j].getFirst() now){set[j].removeFirst();}}}System.out.println(loop ? YES : NO);}} }
http://www.zqtcl.cn/news/584317/

相关文章:

  • 优秀网站展示仲恺做网站
  • 达州做淘宝网站制作3d动画的软件
  • 服务器主机搭建网站wordpress 隐私设置
  • 专业的网站制作公司wordpress 网页模板
  • 中国建设人才服务信息网是什么网站深圳居家办公最新通知
  • 中国建设银行网站招聘wordpress 文件下载插件
  • 福州企业建站程序莆田市的网站建设公司
  • 龙岩做网站推广龙华品牌网站建设
  • 如何用网站开发工具停止网页进程微信网站 教程
  • 高端网站网站设计网站建设怎么分析市场分析
  • 株洲网站设计外包运营wordpress seo插件教程
  • 做湘菜的网站wordpress外贸网站
  • 可以做书的网站做网站的软件叫什么
  • 深圳营销型网站公司电话网站优化北京如何联系?
  • 网站配资公司网站织梦怎么关闭网站
  • 建设企业网站哪家好网站页面布局设计思路
  • 长尾词在线挖掘数字营销服务商seo
  • cms傻瓜式建站系统帝国 cms 网站关键字
  • 东莞营销网站建设直播php 网站 项目
  • 网站访问量什么意思wordpress 静态商店
  • 汕头建站平台网站如何配置域名
  • 大芬网站建设石嘴山网站建设
  • 彩票网站开发解决方案wordpress网站如何与关联
  • 怎么做各大视频网站的会员代理芜湖的网站建设
  • 番禺做网站开发免费素材下载网站
  • 做网站服务公司王业美
  • 遵义网站建设推广城乡住房建设部官网查询
  • 电商设计网站素材免费建站网站seo
  • 做雕塑网站丹阳网站推广
  • 夏津网站建设公司应用分析网站