This commit is contained in:
xiongraorao
2018-08-28 21:10:16 +08:00
parent b59469dfee
commit 25d4a21960
11 changed files with 435 additions and 1 deletions

View File

@ -0,0 +1,38 @@
package com.raorao.interview.haoweilai.t1;
import java.util.Scanner;
/**
* .
*
* @author Xiong Raorao
* @since 2018-08-28-19:01
*/
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine();
System.out.println(process(input));
}
private static int process(String str) {
if (str == null || str.length() == 0) {
return 0;
}
if(str.length() == 1 && Integer.parseInt(str) == 0){
return 1;
}
int len = str.length();
int count = 0;
int sum = 0;
for (int i = 0; i < len; i++) {
sum += str.charAt(i) - '0';
if (sum % 3 == 0) {
count++;
sum = 0;
}
}
return count;
}
}

View File

@ -0,0 +1,47 @@
package com.raorao.interview.haoweilai.t1;
import java.util.Scanner;
/**
* .
*
* @author Xiong Raorao
* @since 2018-08-28-19:01
*/
public class Main2 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine();
System.out.println(process(input));
}
private static boolean isOk(String input, int start, int end) {
int k = 0;
for (int i = start; i < end; i++) {
k = 10 * k + input.charAt(i) - '0';
}
return (k % 3 == 0);
}
private static int process(String str) {
if (str == null || str.length() == 0) {
return 0;
}
int len = str.length();
int[] v = new int[len + 1];
for (int i = 1; i <= len; i++) {
int j = i - 1;
while (!isOk(str, j, i) && j > 0) {
j--;
}
if (isOk(str, j, i)) {
v[i] = Math.max(v[i - 1], v[j] + 1);
} else {
v[i] = v[i - 1];
}
}
return v[len];
}
}

View File

@ -0,0 +1,47 @@
package com.raorao.interview.haoweilai.t2;
import java.util.Scanner;
/**
* .
*
* @author Xiong Raorao
* @since 2018-08-28-19:12
*/
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int t = Integer.parseInt(scanner.nextLine());
int[] res = new int[t];
int[][] input = new int[t][2];
for (int i = 0; i < t; i++) {
String[] tmp = scanner.nextLine().split(" ");
input[i][0] = Integer.parseInt(tmp[0]);
input[i][1] = Integer.parseInt(tmp[1]);
}
for (int i = 0; i < t; i++) {
res[i] = process(input[i][0], input[i][1]);
}
for (int i = 0; i < res.length; i++) {
System.out.println(res[i]);
}
}
private static int process(int x, int k) {
int y = 1;
while (k > 0) {
boolean bool = x + y == (x | y);
if (bool) {
y++;
k--;
} else {
y++;
}
}
return y-1;
}
}

View File

@ -0,0 +1,56 @@
package com.raorao.interview.haoweilai.t3;
import java.util.ArrayList;
import java.util.List;
/**
* .
*
* @author Xiong Raorao
* @since 2018-08-28-19:57
*/
public class Main {
public static void main(String[] args) {
int[] arr = new int[] {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
int[] bool = new int[] {0, 1, 1, 1, 1, 1, 1, 1, 1, 0};
process(arr, bool);
}
private static void process(int[] arr, int[] bool) {
List<String> res = new ArrayList<>();
List<int[]> boolList = new ArrayList<>();
List<Integer> zeros = new ArrayList<>();
for (int i = 0; i < bool.length; i++) {
if (bool[i] == 0) {
zeros.add(i);
}
}
back(zeros,bool, boolList, 0);
for (int i = 0; i < boolList.size(); i++) {
StringBuilder sb = new StringBuilder();
for (int j = 0; j < boolList.get(i).length; j++) {
if (bool[j] == 1) {
sb.append(arr[j]);
}
}
res.add(sb.toString());
}
res.forEach(e -> System.out.println(e));
}
private static void back(List<Integer> zeros, int[] bool, List<int[]> res, int k) {
}
private static int[] arrCopy(int[] arr) {
int n = arr.length;
int[] res = new int[n];
System.arraycopy(arr, 0, res, 0, n);
return res;
}
}

View File

@ -0,0 +1,32 @@
package com.raorao.interview.haoweilai.t4;
import java.util.Scanner;
/**
* .
*
* @author Xiong Raorao
* @since 2018-08-28-20:47
*/
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String[] line1 = scanner.nextLine().split(" ");
int n = Integer.parseInt(line1[0]);
int m = Integer.parseInt(line1[1]);
String[] line2 = scanner.nextLine().split(" ");
int[] score = new int[n];
for (int i = 0; i < n; i++) {
score[i] = Integer.parseInt(line2[i]);
}
float sum = 0, k;
for (int i = 0; i < n; i++) {
sum += score[i];
}
sum /= n - m;
System.out.printf("%.2f", sum);
}
}

View File

@ -1,5 +1,10 @@
package com.raorao.java;
import io.netty.buffer.ByteBuf;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
import java.util.Arrays;
/**
* .
*
@ -8,4 +13,24 @@ package com.raorao.java;
*/
public class A {
public static void main(String[] args) {
ByteBuffer bb = ByteBuffer.wrap(new byte[12]);
bb.asCharBuffer().put("abcdef");
System.out.println(Arrays.toString(bb.array()));
// 反转缓冲区
bb.rewind();
// 设置字节存储次序
bb.order(ByteOrder.BIG_ENDIAN);
bb.asCharBuffer().put("abcdef");
System.out.println(Arrays.toString(bb.array()));
// 反转缓冲区
bb.rewind();
// 设置字节存储次序
bb.order(ByteOrder.LITTLE_ENDIAN);
bb.asCharBuffer().put("abcdef");
System.out.println(Arrays.toString(bb.array()));
}
}