网易2022秋季校园招聘-通用技术A卷-0821
源代码:https://gitee.com/shentuzhigang/algorithm/tree/master/exam-netease/exam-netease-20210821
编程题
第一题

解决方案
JAVA
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;/*** @author ShenTuZhiGang* @version 1.0.0* @email 1600337300@qq.com* @date 2021-08-21 15:03*/
public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);List<Long> list = new ArrayList<>();while (scanner.hasNext()){list.add(scanner.nextLong());}int ans =0 ;for (int i = 0; i < list.size() -1; i++) {for (int j = i+1; j <= list.size() -1; j++) {if (list.get(i) + list.get(j)<list.get(list.size()-1)){ans ++;}}}System.out.println(ans);}
}
第二题

解决方案
JAVA
import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** 返回Sn的第k位字符* @param n int整型 Sn的n* @param k int整型 需要返回的字符下标位* @return char字符型*/public char findKthBit (int n, int k) {// write code hereint d = (int)Math.pow(2, n - 1);if(k==d){return (char)('a' + n -1);}if(d <k ) {return (char)('a' +26 -(findKthBit(n-1,2*d -k)-'a'+1));}else{return findKthBit(n-1,k);}}
}
第三题

解决方案
JAVA
通过率70%
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;/*** @author ShenTuZhiGang* @version 1.0.0* @email 1600337300@qq.com* @date 2021-08-21 15:29*/
public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);List<Integer> list = new ArrayList<>();int min = Integer.MAX_VALUE;while (scanner.hasNext()){int x = scanner.nextInt();min = Math.min(min,x);list.add(x);}if (list.size()==0){System.out.println(0);return;}int x = 1;int ans =1;int d = list.indexOf(min);for (int i = 1; i <list.size() ; i++) {int j= (i+d)%list.size();if(list.get(j)>list.get((j-1 + list.size())%list.size())){x++;}else{x = 1;}ans+=x;}System.out.println(ans);}
}
第四题

解决方案
JAVA
dfs
import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可** 计算最小航行费用* @param input int整型二维数组 二维网格* @return int整型*/public int minSailCost (int[][] input) {// write code herer = input.length;if(r==0){return -1;}c =input[0].length;if(c==0){return -1;}this.input = input;dfs(1,0,0);dfs(0,1,0);return min==Integer.MAX_VALUE?-1:min;}private int[][] input;private int r,c;private int min = Integer.MAX_VALUE;public void dfs(int x,int y,int sum) {if(sum>min||x>=r||y>=c){return;}if (input[x][y]==2){return;}sum=sum+2-input[x][y];if(x==r-1&&y==c-1){min = Math.min(min,sum);return;}dfs(x+1,y,sum);dfs(x,y+1,sum);}
}
问答题
简述几种软件开发模型
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
