问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

求代码:整数接力问题

发布网友 发布时间:2023-06-25 23:30

我来回答

3个回答

热心网友 时间:2024-12-13 02:35

该程序不局限于你题目中的n、m。在该程序中,n、m可以任意大。

我已运行成功,试了很多结果都正确。

#include<stdio.h>

#define MAX  30

typedef struct node

{

 int length;

 char s[MAX];

}*pnode;

void sort_class( pnode* P, int left, int right, int n,char c ) 

{

 for ( int i = left; i <= right; i++ )

  if ( P[i]->length > n )

   break;

 if ( i > right )

  return;

 for ( i = right-1; i >= left; i-- )

 {

  bool exchange = false;

  for ( int j = left; j <= i; j++ )

  {

   if ( ( P[j]->length <= n && !(P[j+1]->length <= n) && c < P[j+1]->s[n] ) ||

    ( !(P[j]->length <= n) && P[j+1]->length <= n && P[j]->s[n] < c ) ||

    ( !(P[j]->length <= n) && !(P[j+1]->length <= n) && P[j]->s[n] < P[j+1]->s[n]) )

   {

    pnode temp = P[j+1]; P[j+1] = P[j]; P[j] = temp;

    exchange = true;

   }

  }

  if ( !exchange )

   break;

 }

 for ( i = left; i <= right; i++ )

 {

  if ( P[i]->length <= n )

   continue;

  int start = i;

  i++;

  while ( i <= right && P[i]->s[n] == P[start]->s[n] )

   i++;

  i--;

  sort_class( P, start, i, n+1, c );

 }

}

void sort( pnode* P, int left, int right )

{

 for ( int i = right-1; i >= left; i-- )

 {

  bool exchange = false;

  for ( int j = left; j <= i; j++ )

  {

   if ( P[j]->s[0] < P[j+1]->s[0] )

   {

    pnode temp = P[j+1]; P[j+1] = P[j]; P[j] = temp;

    exchange = true;

   }

  }

  if ( !exchange )

   break;

 }

 for ( i = left; i <= right; i++ )

 {

  int start = i;

  i++;

  while ( i <= right && P[i]->s[0] == P[start]->s[0] )

   i++;

  i--;

  sort_class( P, start, i, 1, P[start]->s[0] );

 }

}

void main()

{

 FILE* fp;

 fp = fopen( "input.txt", "r" );

 

 int n;

 fscanf( fp, "%d", &n );

 pnode* P = new pnode[n];

 for ( int i = 0; i < n; i++ )

 {

  P[i] = new node;

  fscanf( fp, "%s", P[i]->s );

  for ( int j = 0; P[i]->s[j] != '\0'; j++);

  P[i]->length = j;

 }

 

 fclose( fp );

 fp = fopen( "output.txt" , "w" );

 sort( P, 0, n-1 );

 for ( i = 0; i < n; i++ )

 {

  fprintf( fp, "%s ", P[i]->s );

  printf( "%s ", P[i]->s );

 }

 printf("已输出到文件\n");

}

热心网友 时间:2024-12-13 02:36

#include<iostream>
#include<vector>

#include<fstream>
#include<string>
#include<algorithm>
#include<vector>

using namespace std;

int main()
{
ifstream infile("input.txt");
ofstream outfile("output.txt");

int restult=0,total,a;
vector<int> process;
infile>>a;
while(infile>>a)
process.push_back(a);
sort(process.begin(),process.end()); //从小到大排序。

a=1;
for(vector<int>::iterator it=process.begin();it!=process.end();++it,a*=10)

restult+=a*(*it); //相加

outfile<<restult;

return 0;
}

热心网友 时间:2024-12-13 02:36

这个可以实现 不知道当n=3的时候 组成的数是1 2 3还是不是确定的? (比如可以不是1 2 3 而是输入的?)

反正不管怎么样,算法就是把这几个整数转化为字符串然后将这些字符串从大到小排序 然后从大到小输出就是最大值。。。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
有要业余时间弹古筝的酒店么 古筝演奏师的就业前景怎么样 茶馆里主要放的音乐类型是 日语一级的话什么水平啊 一级到底要求多少词汇啊? WPS右键菜单(win11) 再生缘 我的温柔暴君结局是什么啊?女主最后傻了? 为什么做爱多了没感情了 情侣之间在一起时间长了是不是做爱的时候也懒得接吻了直接进入主题吗... 夫妻性爱后为何丧失了热情 小红楼是什么软件 未闻花名剧场版哪里可以看? 乙烯雌酚为什么有顺反异构体哪种异构体作用强? ...照片上写什么语句好?得有关杯子的谐音10-20字,急用跪求.. 乙烯雌酚的作用 帮女 朋友买了一个生日杯子,在杯子上写什么比较好,10个字以内的 ...碱金属元素中 有没有什么很重要的考点 。帮 明天开始我要把你忌了是啥意思 黄金考点方向标六年级语文网上有卖吗? 中级社工买教材还是黄金考点 牛女婚配最佳属相 石英灯特点?? 有关鱼缸灯种水草问题 宋再临在韩国火吗 宋再临多大了 亚洲杯最新积分战报 A组大混乱 都可能是国足对手 约旦不再是爆冷_百... 国奥亚洲杯积分榜 互助旅游的如何参与 u20亚洲杯小组积分榜 2023u20亚洲杯积分榜 红楼软件怎么样 求助电影名字,背后有白色翅膀的人跳楼和用手中的火焰燃烧建筑物镜头的貌... 求一枚 未闻花名 剧场版中文字幕 标准点的,谢谢 求下载DH-辅助接力卡管家加成视频教程.wmv种子的网址好人一生平安_百度... 求我们仍未知道那天所看见的花的名字剧场版中字百度云下载 以下对于X线滤过的叙述,错误的是 暗恋橘生淮南怎么拍了两个版本 翟潇闻演的是什么角色 ...A.滤过是吸收X线束中的低能成分 B.固有滤过是X线管组件本身的滤过... X线滤过的临床意义? 低滤过选择什么窗口? 南京周边自驾游路线:国庆出游必去春节南京周边自驾游 滤过厚度对x线强度的影响 为什么我的苹果6手机看视频时声音时有时无? 第四季中国诗词大会教科书式经典开场词? 行走的荷尔蒙在哪个平台 女性荷尔蒙失调的原因是什么?荷尔蒙失调怎么调理好? 我的美丽日记官方台湾的那个网站是真的吗? http://www.my-beautydiary... 我的美丽日记面膜有哪些系列? 我的美丽日记的代言人是谁 求一张半阳的南北的歌词图片