永发信息网

100分求注释(付 题目 几行代码) C语言

答案:3  悬赏:0  手机版
解决时间 2021-05-06 07:29

最近问问上的高手呢????? 求注释喽

Description

输入由{'o','r','z'}组成的字符系列对其按字母顺序排序。
如果规定排序过程只能做交换工作来达到排序效果(类似冒泡排序)。
求最小交换次数。

Input

一个整数T,表示测试数据个数。
每个测试数据包含一个数字n(字符个数,不计空格),0<n<10000 和字符序列str。

Output

最小交换次数。

Sample Input

3 3 z ro 2 z r 5 o orr z

Sample Output

1 1 0

Hint

Hint:
字符序列
z,r,o
排完序后为
o,r,z
所以只要交换z,o
即1 次就能达到排序效果

#include<stdio.h>
int f(char t){return t=='o'?0:t=='r'?1:t=='z'?2:3;}
int m(int a,int b){return a<b?a:b;}
int main()
{
char a[10000],t;
int b[3][3],c[3],n,i,j,k;
gets(a);
while(scanf("%d",&n)!=EOF)
{
for(i=0;i<3;i++)
for(j=0;j<3;j++)
b[i][j]=c[i]=0;
for(i=0;i<n;i++)
while((t=getchar()))
if(f(t)<3)
{
c[f(t)]++,a[i]=t;
break;
}
for(n=k=i=0;i<3;i++)
for(j=0;j<c[i];k++,j++)
b[i][f(a[k])]++;
for(n=i=0;i<3;i++)
{
j=(i+1)%3;
k=m(b[i][j],b[j][i]);
n+=k;
b[i][j]-=k;
b[j][i]-=k;
n+=(b[0][1]?b[0][1]:b[0][2])*2;
}

printf("%d\n",n);
}
return 0;
}

最佳答案

#include<stdio.h>
int f(char t){return t=='o'?0:t=='r'?1:t=='z'?2:3;} //交换函数
int m(int a,int b){return a<b?a:b;}       //比较函数
int main() //主函数
{
char a[10000],t;              //定义数组和一变量
int b[3][3],c[3],n,i,j,k;            //定义二维数组,和n,i,j,k变量
gets(a);                  //输入一数据
while(scanf("%d",&n)!=EOF)        //
{
for(i=0;i<3;i++)
for(j=0;j<3;j++)
b[i][j]=c[i]=0;
for(i=0;i<n;i++)
while((t=getchar()))
if(f(t)<3)
{
c[f(t)]++,a[i]=t;
break;
}
for(n=k=i=0;i<3;i++)
for(j=0;j<c[i];k++,j++)
b[i][f(a[k])]++;
for(n=i=0;i<3;i++)
{
j=(i+1)%3;
k=m(b[i][j],b[j][i]);
n+=k;
b[i][j]-=k;
b[j][i]-=k;
n+=(b[0][1]?b[0][1]:b[0][2])*2;
}


printf("%d\n",n);
}
return 0;
}

全部回答
我建议你还是关闭问题好了。想要知道这样的答案在问问上是找不到的。你可以去网上查。
你要是对我们老大有意见就直说,有胆量和狼亲们单挑嘛
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
为什么电脑左下角一直会出现一个感叹号
梦幻西游号装备被盗了 怎么办啊?
生原鲜肉富都店在什么地方啊,我要过去处理事
rundll.exe进程占用CPU问题,请高手帮助解决
年黄钻也可以玩QQ农场野牛么?我不是黄钻七
无锡到杭州的动车票价多少
C语言编程:有一个3*4的矩阵,找出其中最小的
死者为什么都梦想要升天堂呢?真的有天堂吗?
常说的北极贝刺身那个刺身是什么意思/??
如果一个高中生,对爱情有了萌芽,应该怎么办
如果真心喜欢一个人,可他还在犹豫我该怎么办
什么叫木马?有什么用阿
iPhone做爆米花原理
星月童话地址有知道的么?有点事想过去
苹果汁可治宝宝拉肚子吗
推荐资讯
在我家电脑上登录QQ为什么都需要输好多次验证
磨山道/东湖东路(路口)这个地址在什么地方,
如果a.b都是正数,且a不等于b,求证a的六次方
抱负是一种冲动吗?!
这是谁哟、?好漂亮
双子坐的运程
我找wm ppc 2003版的uc桌面 请问那里有啊???
当今社会是学问贬值还是大学生太多
DNF黑光和太拉石光剑那个好些?
晚上睡觉掉被子 怎么办
艾克台词中英,求美剧绝望的主妇中英文台词和
智慧树国际幼教中心这个地址在什么地方,我要
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?