杭电2016数列有序

#include<iostream>
using namespace std;
int main()
{
  int n,m,t = 0;
  int a[110], b[110];
  while (cin >>n>>m)
  {
    if (n == 0 && m ==0)//讨论零的情况
      {
        break;
      }
    else
    {
      for (int i = 0; i < n; i++)//输入数组值
      cin >> a[i];
      for (int i = 0; i < n; i++)//把数组a的值赋给b,直到m赋给了b就跳出循环,再开始后面的复制赋值
        {
          if (m>a[i])
          b[i] = a[i];
      else
        {
          b[i] = m;
          break;
        }
          t++;
     }
    for (int i = t; i < n; i++)
    b[i + 1] = a[i];
    for (int i = 0; i < n; i++)
    cout << b[i] << " ";//最后一个数后面不能有空格,所以要分开输出
    cout << b[n] << endl;
    t = 0;
    }
  }
  return 0;
}

时间: 2024-11-13 10:20:34

杭电2016数列有序的相关文章

杭电 2019 数列有序!

http://acm.hdu.edu.cn/showproblem.php?pid=2019 数列有序! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 44844    Accepted Submission(s): 19451 Problem Description 有n(n<=100)个整数,已经按照从小到大顺序排列好,现在另外给

杭电2019 数列有序!(STL解法)

由于这题对于学过数据结构的我来说,真的是很简单,为了减少时间上的损失,链表无疑是最好的选择(因为数组要往后移位子).然后,因为最近想玩些STL的骚操作,所以就用<list>了,然后顺便学了下迭代器的用法,其原理其实和指针差不多,就是比指针安全.然后,在a题的过程中发现指针的+-还是有些问题的,所以,就用数值代替了.闲话不多说,奉上ac代码: #include <iostream> #include<math.h> #include <iomanip> #in

杭电ACM2019--数列有序!

数列有序! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 122510    Accepted Submission(s): 50550 Problem Description 有n(n<=100)个整数,已经按照从小到大顺序排列好,现在另外给一个整数x,请将该数插入到序列中,并使新的序列仍然有序. Input 输入数据包含多个测试实例

数据的交换输出【杭电-2016】 附题

/* 数据的交换输出 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 54495    Accepted Submission(s): 20688 Problem Description 输入n(n<100)个数.找出当中最小的数,将它与最前面的数交换后输出这些数. Input 输入数据有多组,每组占一行,每行的開始是一个整数n,表示这

杭电2016 数据的交换输出

Problem Description 输入n(n<100)个数,找出其中最小的数,将它与最前面的数交换后输出这些数. Input 输入数据有多组,每组占一行,每行的开始是一个整数n,表示这个测试实例的数值的个数,跟着就是n个整数.n=0表示输入的结束,不做处理. Output 对于每组输入数据,输出交换后的数列,每组输出占一行. Sample Input 4 2 1 3 4 5 5 4 3 2 1 0 Sample Output 1 2 3 4 1 4 3 2 5 代码: 1 #include

杭电2016

1 #include<stdio.h> 2 int main() 3 { 4 int a[100],n,i,t,k; 5 while(~scanf("%d",&n)&&n) 6 { 7 for(i=k=0; i<n; ++i) 8 { 9 scanf("%d",&a[i]); 10 if(a[i]<a[k]) //寻找最小值位置 11 k=i; 12 } 13 if(k) //不是第一个,那么和第一个交换 14

杭电2016 数据的交换输出 (又吃了没有初始化的亏)

水题倒还是水题,但我ac了半天没ac,原来是数组指针pos没有初始化23333.代码很简单.附上: #include <iostream> #include<math.h> #include <iomanip> #include<cstdio> #include<string> #include<map> #include<vector> #include<algorithm> #include<stdl

HDU 5742 It&#39;s All In The Mind (贪心) 2016杭电多校联合第二场

题目:传送门. 题意:求题目中的公式的最大值,且满足题目中的三个条件. 题解:前两个数越大越好. #include <iostream> #include <algorithm> #include <cstdio> #include <cstring> using namespace std; int gcd(int a,int b) { if(!b) return a; return gcd(b,a%b); } int main() { int t; ci

杭电ACM分类

杭电ACM分类: 1001 整数求和 水题1002 C语言实验题——两个数比较 水题1003 1.2.3.4.5... 简单题1004 渊子赛马 排序+贪心的方法归并1005 Hero In Maze 广度搜索1006 Redraiment猜想 数论:容斥定理1007 童年生活二三事 递推题1008 University 简单hash1009 目标柏林 简单模拟题1010 Rails 模拟题(堆栈)1011 Box of Bricks 简单题1012 IMMEDIATE DECODABILITY