春招秋招忆---360 笔试
题目
有一种特殊的DNA,长度为n,核酸由A和T成,科学家有一种新的手段,每一次可以改变这种DNA上两个核酸的位置,也可以将某个特定位置的核酸修改为另一种核酸。
现在有一个DNA,科学家希望将其改造成另一种DNA,计算最少的操作次数。
输入
输入包含两行,第一行为初始的DNA,第二行为目标DNA,保证长度相同。
输出
输出最少的操作次数
样例输入
ATTTAA
TTAATT
样例输出
3
提示
对于100%的数据,DNA长度小于等于100000
样例解释:
1.首先修改第一个位置的核酸(从A修改为T)
2交换3和5位置的核酸
3交换4和6位置的核酸
public static void main(String[] args) { Scanner scanner = new Scanner(System.in); //System.out.println("请输入一个数组:以空格隔开"); String str1 = scanner.nextLine(); //String[] tmp = str1.split(" "); String str2 = scanner.nextLine(); // String[] tmp2 = str2.split(" "); System.out.println(find(str1,str2)); } public static int find(String str1,String str2){ int a = 0; int t = 0; for(int i =0; i< str1.length();i++){ if(str1.charAt(i) =='A' && str2.charAt(i)!='A'){ a++; } if(str1.charAt(i) =='T' && str2.charAt(i)!='T'){ t++; } } return Math.max(a,t); }
原文地址https://mp.weixin.qq.com/s/AGBiWsPU9GX4qp7CNrkLnQ
#面经##校招##360公司##Java工程师#