java CG

进制转换

package ch2;
import java.util.Scanner;
public class CG0311_2 {
    public static void main(String [] args) {
        Scanner sc = new Scanner(System.in); 
        long  res=0 ,base = 1;
        String str;
        str = sc.next();
        int len = str.length();
        for(int i = len-1;i>=0;i--) {
            if( str.charAt(i)=='1' ) {
                res += base;
            }
            base*=2;
        } 
        System.out.println(res);
        sc.close();
    }
}

 

 

 

double

package ch2;
import java.util.Scanner;
public class CG031101 {
    public static void main( String [] args ) { 
        Scanner in = new Scanner(System.in);
        long a,b;
        a = in.nextInt();
        b = in.nextInt(); 
        System.out.printf("128-bit hexadecimal number:\n%016x%016x\n",a,b);
        a = a<<1;
        if( b<=-1 )    a=a+1; 
        b=b<<1;
        System.out.printf("After doubling:\n%016x%016x\n",a,b);
    }
}
 

 

找点:在本列和本行都是最大。

package CG;

import java.util.Scanner;

public class array_1 {
    public static void main(String [] args) {
        Scanner sc=new Scanner(System.in);
        int arr[][] = new int[12][12];
        int m,n;
        n = sc.nextInt();
        m = sc.nextInt();
        for( int i = 1;i<=n ;i++ ) {
            for(int j = 1;j<=m;j++) {
                arr[i][j] = sc.nextInt();
            }
        }
        for( int i = 1;i<=n ;i++ ) {
            for(int j = 1;j<=m;j++) {
                int flag = 1;
                for(int jj = 1;jj<=m;jj++) if( arr[i][jj]>arr[i][j] ) flag = 0;
                for(int ii = 1;ii<=n;ii++) if( arr[ii][j]>arr[i][j] ) flag = 0;
                if(flag==1) {
                    System.out.println( arr[i][j]+" "+i+" "+j);
                }
                 
            }System.out.println();
        }
                
    }
}

 

 

二分查找

 package CG;
import java.util.Scanner;
public class array_2 {
    public static int find(int []arr,int l,int r,int res){
        if( l == r ) {
            if( arr[l]==res ) return l;
            else return 0;
        } 
        int mid = (l+r)/2;
        if( arr[mid] == res ) return mid;
        else if( arr[mid]<res ) return find(arr,mid+1,r,res);
        return find(arr,l,mid-1,res);
    }
    public static void main(String[] args) { 
        Scanner sc=new Scanner(System.in);
        int n=sc.nextInt();
        int []arr=new int[n+5];
        for(int i=0;i<n;i++){
            arr[i]=sc.nextInt();
        }
        int res=sc.nextInt(); 
        System.out.println(find(arr,0,n-1,res));
    }
}

 

表的“异或”

package CG; 
import java.util.*; 
public class array_3 {
    public static void main(String[] args) {
        HashSet<Integer> Set1 = new HashSet<>();
        HashSet<Integer> Set2 = new HashSet<>();
        int arr[] = new int[45];
        int n,m;
        Scanner sc = new Scanner( System.in );
        n = sc.nextInt();
        for(int i = 1; i<= n; i++) {
            arr[i] = sc.nextInt();
            Set1.add(arr[i]);
        } 
        m = sc.nextInt();
        for(int i = n+1; i<= m+n; i++) {
            arr[i] = sc.nextInt();
            if( Set1.contains(arr[i]) ) Set2.add(arr[i]);
        }
        Arrays.sort(arr,1,m+n+1); 
        for(int i = 1;i <= m+n ; i++) {
            if( !Set2.contains(arr[i]) ) System.out.print( arr[i]+" " );
        }
    }
}

 

posted @ 2020-03-11 14:18  SunCY  阅读(382)  评论(0编辑  收藏  举报