关注
暴力做的,后来写完的,一开始只能过56,后来改了下,也不知道能不能过全部
public class Lianjia3 {
private static boolean isTrue(int[] verify,int[] data, int n){
for (int i=0;i<n;++i){
if (verify[i]!=data[i]){
return false;
}
}
return true;
}
private static void swap(int i,int j,int[] data){
int t=data[i];
data[i]=data[j];
data[j]=t;
}
private static int ans=Integer.MAX_VALUE;
public static void solve(int index,int[] verify,int[] data,int n,int cur){
if (isTrue(verify, data, n)){
ans=Math.min(ans, cur);
return;
}
if (verify[index]==data[index]){
solve(index+1, verify, data, n, cur);
return;
}
int id=-1;
for (int j=index+1;j<n;++j){
if(data[j]==verify[index] && verify[j]==data[index]){
id=j;
break;
}
}
if(id!=-1){
swap(index, id, data);
solve(index+1, verify, data, n, cur+1);
}
if (id==-1){
for (int j=index+1;j<n;++j){
if(data[j]==verify[index] && verify[j]!=data[j]){
id=j;
swap(index, j, data);
solve(index+1, verify, data, n, cur+1);
swap(index, j, data);
}
}
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
int n=in.nextInt();
int[] data=new int[n];
int oneCount=0;
int twoCount=0;
int threeCount=0;
for (int i=0;i<n;++i){
data[i]=in.nextInt();
if (data[i]==1){
oneCount++;
}else if (data[i]==2){
twoCount++;
}else{
threeCount++;
}
}
int[] verify=new int[n];
int i=0;
for (int j=0;j<oneCount;++j){
verify[i++]=1;
}
for (int j=0;j<twoCount;++j){
verify[i++]=2;
}
for (int j=0;j<threeCount;++j){
verify[i++]=3;
}
solve(0,verify, data, n, 0);
System.out.println(ans);
in.close();
}
}
查看原帖
点赞 2
相关推荐
点赞 评论 收藏
分享
12-08 18:11
曲阜师范大学 Java
程序员花海_:实习和校招简历正确格式应该是教育背景+实习+项目经历+个人评价 其中项目经历注意要体现业务 实习经历里面的业务更是要自圆其说 简历模板尽可能保持干净整洁 不要太花哨的 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 实习简历求拷打 #
5383次浏览 66人参与
# 你会为了工作牺牲生活吗? #
66709次浏览 454人参与
# 秋招被挂春招仍然能投的公司 #
4873次浏览 81人参与
# 考研失败就一定是坏事吗? #
198781次浏览 1355人参与
# 什么是优秀的实习经历 #
6649次浏览 191人参与
# 为了求职,我做过的疯狂伪装 #
75363次浏览 763人参与
# mt对你说过最有启发的一句话 #
29504次浏览 363人参与
# 牛友们,签完三方你在忙什么? #
128610次浏览 981人参与
# 摸鱼被leader发现了怎么办 #
96243次浏览 619人参与
# 巨人网络工作体验 #
71059次浏览 502人参与
# 你今年的保底offer是哪家 #
154411次浏览 670人参与
# 秋招特别不鸣谢 #
13427次浏览 169人参与
# 你投递的公司有几家约面了? #
153759次浏览 990人参与
# 第一次面试 #
1035381次浏览 13679人参与
# 今年秋招你收到了多少封邮件? #
16462次浏览 216人参与
# 工作中遇到的歹人 #
24306次浏览 285人参与
# 选实习,你更看重哪方面? #
11320次浏览 201人参与
# 携程求职进展汇总 #
837804次浏览 5500人参与
# 滴!实习打卡 #
749042次浏览 6762人参与
# 毕业论文进行时 #
20416次浏览 127人参与