codeforces 498 div3(a-e java)
生活随笔
收集整理的這篇文章主要介紹了
codeforces 498 div3(a-e java)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目鏈接
A:水題
B
package codeforces498;import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Scanner;public class testB {public static void main(String[] args) {Scanner sc=new Scanner(System.in);int n=sc.nextInt();int k=sc.nextInt();int a[]=new int[n];List<String> list=new ArrayList();for(int i=0;i<n;i++){a[i]=sc.nextInt();}int b[]=a.clone();Arrays.sort(b);int value=0;for(int i=b.length-1;i>b.length-1-k;i--){list.add(b[i]+"");value+=b[i];}System.out.println(value);int index=-1;for(int i=0;i<n;i++){if(list.contains(a[i]+"")){if(list.size()==1) {System.out.print(n-index-1);break;}elseSystem.out.print((i-index)+" ");index=i;list.remove(a[i]+"");}}} }C:
package codeforces498;import java.util.HashMap; import java.util.Map; import java.util.Scanner;public class testC {public static void main(String[] args) {Scanner sc=new Scanner(System.in);int n=sc.nextInt();int a[]=new int[n];long first[]=new long[n];Map<Long,Integer>map=new HashMap();map.put((long) 0, 0);for(int i=0;i<n;i++){a[i]=sc.nextInt();if(i==0)first[i]=a[i];elsefirst[i]=first[i-1]+a[i];map.put(first[i],i );}long last[]=new long[n+1];for(int i=n-1;i>0;i--){last[i]=last[i+1]+a[i];}for(int i=1;i<n+1;i++){if(map.containsKey(last[i])) {if(map.get(last[i])<i) {System.out.println(last[i]);break;}}}}}D:
package codeforces498;import java.util.Scanner;public class testD {public static void main(String[] args) {Scanner sc=new Scanner(System.in);int n=sc.nextInt();String a=sc.next();String b=sc.next();char a1[]=a.toCharArray();char b1[]=b.toCharArray();boolean bool[]=new boolean[a.length()];for(int i=0;i<n;i++)//標記相同的不動。{if(a1[i]==b1[i]) {bool[i]=true;}}int time=0;for(int i=0;i<n;i++){if(!bool[i]){if(!bool[n-i-1]){if(b1[i]==b1[n-i-1]){char t=a1[i];a1[i]=b1[i];b1[i]=t;//time++;}if(a1[i]==b1[n-i-1]){char t=a1[i];a1[i]=a1[n-1-i];a1[n-1-i]=t;bool[n-1-i]=true;}if(b1[i]==a1[n-1-i]){char t=a1[i];a1[i]=a1[n-1-i];a1[n-1-i]=t;bool[i]=true;} }}} for(int i=0;i<n;i++){if(!bool[i]&&a1[i]!=b1[i]){time++;}}System.out.println(time);} }E:
package codeforces498;import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Scanner;public class testE {static boolean bool=false;static int value,number=1;static int a[];//打表的值,通過位置反應值static int b[];//// static Map<Integer,Integer>map;//通過值反應對應位置static int end[];public static void main(String[] args) {Scanner sc=new Scanner(System.in);int n=sc.nextInt();int q=sc.nextInt();// map=new HashMap();a=new int[n+1];b=new int[n+1];end=new int[n+1];tree t[]=new tree[n+1];for(int i=0;i<n+1;i++){t[i]=new tree(i);}for(int i=1;i<n;i++){int team=sc.nextInt();t[team].list.add(i+1);}dfs(1,t);for(int i=0;i<q;i++){bool=false;int first1=sc.nextInt();value=sc.nextInt();//數量int fi=b[first1];//位置編號 if(fi+value-1>end[first1]) {System.out.println(-1);}else {System.out.println(a[fi+value-1]);}}}private static void dfs(int first, tree[] t) {a[number]=first;//map.put(first, number++);b[first]=number++;for(int i=0;i<t[first].list.size();i++){dfs(t[first].list.get(i),t);}end[first]=number-1;}static class tree{int index;List<Integer> list=new ArrayList();public tree() {}public tree(int index){this.index=index;}public tree(int index,ArrayList list){this.index=index;this.list=list;}} }總結
以上是生活随笔為你收集整理的codeforces 498 div3(a-e java)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: codeforces 496 div3(
- 下一篇: 杭电2669拓展欧几里得