#include <iostream> using namespace std; int main() { int n,ans; cin>>n; int arr[n]; for(int i=0;i<n;i++) { cin>>arr[i]; } for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { if(arr[j]>=arr[j+1]) { ans=arr[j]; arr[j]=arr[j+1]; arr[j+1]=ans; } } } int end=n; for(int i=0;i<n-1;i++) { if(arr[i]==arr[i+1]) end--; } for(int i=0;i<n-1;i++) { for(int j=0;j<n-2;j++) { if(arr[j]==arr[j+1]) { arr[j+1]=arr[j+2]; } } } cout<<end<<endl; for(int i=0;i<end;i++) { cout<<arr[i]<<" "; } }
#include<iostream> using namespace std; int main() { int N; cin >> N; int a[100] ; int i, j, k; int x = 0; for (i = 0; i < N; i++) { cin >> a[i]; } for (j = 0; j < N - 1; j++) { for (k = 0; k < N - 1 - j; k++) { if (a[k] > a[k + 1]) { int t = a[k]; a[k] = a[k + 1]; a[k + 1] = t; } } } for (i = 0; i < N-x; i++) { if (a[i] == a[i + 1]) { for (j = i; j < N; j++) { a[j] = a[j + 1]; } x++; } } cout << N - x << endl; for (i = 0; i < N-x ; i++) { cout << a[i]<<" "; } return 0; } 麻烦大佬看看这是哪里错了,结果显示答案错误
卡塔库栗 2021-12-25 20:46:27 |
我的跟你的好像 但也不对 #include<stdio.h> int main() { int i,j,n,a[10001]; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d",&a[i]); } for(i=0;i<n-1;i++) { for(j=i+1;j<n;j++) { if(a[i]>a[j]) { int temp; temp=a[i]; a[i]=a[j]; a[j]=temp; } } } int flag=0; for(i=0;i<n-flag;i++) { if(a[i]==a[i+1]) { for(j=i;j<n;j++) { a[j]=a[j+1]; } flag++; } } printf("%d ",n-flag); for(i=0;i<n-flag-1;i++) { printf("%d ",a[i]); } printf("%d ",a[n-flag-1]); }
点我有惊喜!你懂得!浏览:2119 |
C二级辅导-同因查找 (C语言代码)浏览:626 |
九宫重排 (C++代码)浏览:1410 |
【绝对值排序】 (C++代码)浏览:720 |
C语言程序设计教程(第三版)课后习题5.5 (C语言代码)浏览:737 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:1327 |
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:588 |
Hello, world! (C++代码)浏览:1778 |
最小公倍数 (C语言代码)浏览:1107 |
1012题解浏览:938 |