二进制1的个数
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
Scanner sc=new Scanner(System.in);
while(sc.hasNext()){
int n=sc.nextInt();
int count=0;
while(n!=0){
if((n&1)==1){
count++;
}
n=n>>1;
}
System.out.println(count);
}
}
}
手套
import java.util.*;
public class Gloves {
public int findMinimum(int n, int[] left, int[] right) {
// write code here
int left_sum=0;
int right_sum=0;//分别计算左面手套和右面手套的综合
int left_min=Integer.MAX_VALUE;
int right_min=Integer.MAX_VALUE;//分别用来保存左面或者右面的最小手套数目
int sum_zero=0;//统计一方出现手套为0的手套数目
for(int i=0;i<n;i++)//有n种颜色的手套
{
if(left[i] * right[i] == 0)//只要一方有0,统计
{
sum_zero+=left[i]+right[i];
}
else
//对于左右手都有的颜色手套,执行累加-最小值+1
//找到最小值和总数
{
left_sum+=left[i];//统计左手套的数目
left_min=Math.min(left_min,left[i]);//左手套中颜色最少的
right_sum+=right[i];//同上
right_min=Math.min(right_min,right[i]);
}
}
//谁少取谁
int get=Math.min(left_sum-left_min+1,right_sum-right_min+1);
return sum_zero+get+1;//最后返回时只要任取对面的1个手套以及取完所有为0的情况和一方手套
}
}
完全数计算
6=1+2+3
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
Scanner sc=new Scanner (System.in);
int n=sc.nextInt();
int count=0;
for(int i=1;i<=n;i++){
int sum=0;
for(int j=1;j<i;j++){
if(i%j==0){
sum=sum+j;
}
}
if(sum==i){
count++;
}
}
System.out.println(count);
}
}
扑克牌大小
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;
public class Main {
public static void main(String[] args) throws IOException {
Scanner sc=new Scanner(System.in);
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String poker="345678910JQKA2jokerJOKER";
String s=sc.nextLine();
if(s.contains("joker JOKER")){
System.out.println("joker JOKER");
}else if(s.contains("JOKER")){
System.out.println("JOKER");
}
else{
String []str=s.split("-");
String []left=str[0].split(" ");
String []right=str[1].split(" ");
if(left.length==4&&right.length!=4){
System.out.println(str[0]);
}
else if(left.length!=4&&right.length==4){
System.out.println(str[1]);
}
else if(left.length==right.length){
if(poker.indexOf(left[0].substring(0,1))>poker.indexOf(right[0].substring(0,1))){
System.out.println(str[0]);
}else{
System.out.println(str[1]);
}
}
else{
System.out.println("ERROR");
}
}
}
}