1 条题解
-
0
C++ :
#include<bits/stdc++.h> using namespace std; int main(){ int m,n,t,f; cin>>m>>n; int a[m],b[n],c[m+n],x,k=0; for(int i=0;i<m;i++){ cin>>x; a[i] = x; c[k] = x; k++; } for(int i=0;i<n;i++){ cin>>x; b[i] = x; c[k] = x; k++; } //原数组排序 sort(a,a+m); sort(b,b+n); sort(c,c+m+n); //输出c数组 从小到大 不能重复 for(int i=0;i<m+n;i++){ f = 0;//假设往前看没有 for(int j=0;j<i;j++){ if(c[i]==c[j]){ f = 1; break; } } if(f==0){ cout<<c[i]<<" "; } } cout<<endl; for(int i=0;i<m;i++){ t = a[i]; f = 0;//假设找不到 for(int j=0;j<n;j++){ if(a[i]==b[j]){ f = 1; break; } } if(f==1){ cout<<a[i]<<" "; } } return 0; }Java :
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int m = sc.nextInt(); int n = sc.nextInt(); int[] a = new int[m]; int[] b = new int[n]; int[] c = new int[m + n]; int[] d = new int[m+n]; int index = 0; for (int i = 0; i < m; i++) { a[i] = sc.nextInt(); c[index++] = a[i]; } for (int i = 0; i < n; i++) { b[i] = sc.nextInt(); c[index++] = b[i]; } int t = 0; for (int i = 1; i <= n + m - 1; i++) { for (int j = 0; j <= n + m - i - 1; j++) { if (c[j] > c[j + 1]) { t = c[j]; c[j] = c[j + 1]; c[j + 1] = t; } } } // for(int i = 0;i < n + m;i++){ // System.out.print(c[i] + " "); // } // System.out.println(); //求并集 for(int i = 0 ; i < m+n ; i++) { d[i] = c[i]; } int k = m+n; for(int i = 0 ; i < k-1 ; i++ ) { if(d[i] == d[i+1]) { for(int j = i ; j < k-1 ; j++) { d[j] = d[j+1]; } k--; } } for(int i = 0 ; i < k ;i++) { System.out.print(d[i]+" "); } //求交集 System.out.println(); for(int i = 0 ; i < m+n-1 ; i++) { if(c[i] == c[i+1]) System.out.print(c[i]+" "); } } }Python :
n,k=map(int,input().split()) l1=list(map(int,input().split())) l2=list(map(int,input().split())) s1=set(l1) s2=set(l2) l3 = list(s1.union(s2)) l3.sort(); for j in (l3): print(j,end=' ') print() l4 = list(s1.intersection(s2)) l4.sort(); for i in (l4): print(i,end=' ')
- 1
信息
- ID
- 451
- 时间
- 1000ms
- 内存
- 64MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者