Acwer

6688

2019211753
acwing10

xzxqwq

TanYIXuan20091207
wzy_
tonngw

CHN右手

IWYN
XiAoYaNg

czj_czj
yxc的键盘

Acwer
2小时前
import java.util.Scanner;

public class Main{
static long a[][] = new long[30][10010];
static int w[] = new int[30];
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
int v = scan.nextInt();
int n = scan.nextInt();
for(int i=1;i<=v;i++){
w[i] = scan.nextInt();
}
a[0][0] = 1;
for(int i=1;i<=v;i++){
for(int j=0;j<=n;j++){
for(int k=0;k*w[i]<=j;k++){
a[i][j] = a[i][j] +a[i-1][j-k*w[i]];
}
}
}

System.out.println(a[v][n]);
}
}


Acwer
4小时前
import java.util.Scanner;

public class Main {
static long f[][] = new long[30][10010];  //前i种硬币，金额不超过j，的最小种数。
static int a[] = new int[30];
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
int v = scan.nextInt();
int n = scan.nextInt();

for(int i=1;i<=v;i++){
a[i] = scan.nextInt();
}
f[0][0] = 1;
for(int i=1;i<=v;i++){
for(int j=0;j<=n;j++){
for(int k=0;k*a[i]<=j;k++){
f[i][j] = f[i][j] + f[i-1][j-k*a[i]];
}
}
}

System.out.println(f[v][n]);

}
}


Acwer
20小时前
/*
从这道题学到了一点语法知识。
//把一维数组塞到集合中去，形成二维数组。
List<int a[]> list = new ArrayList<>();

2 Arrays.sort(a,new Comparator<int[]>{
public int compare(int a1[],int a2[]){
return a1[0] - a2[0];
}
});
*/
class Solution {
public int[][] merge(int[][] intervals) {
Arrays.sort(intervals,new Comparator<int[]>(){
public int compare(int a1[],int a2[]){
return a1[0]-a2[0];
}
});

int st = (int)-2e9;
int ed = (int)-2e9;
List<int[]> list = new ArrayList<>();
for(int i=0;i<intervals.length;i++){
if(intervals[i][0]>ed){
//排除第一个区间
if(st!=-2e9){
}
st = intervals[i][0];
ed = intervals[i][1];
}
else{
//合并区间
ed = Math.max(ed,intervals[i][1]);
}
}
if(st!=-2e9){
}
int a[][] = new int[list.size()][2];
for(int i=0;i<list.size();i++){
//或者用a[i] = list.get(i);  这种写法。
a[i][0] = list.get(i)[0];
a[i][1] = list.get(i)[1];
}

return a;

}
}



Acwer
1天前
class Solution {
public int largestSumAfterKNegations(int[] nums, int k) {
Arrays.sort(nums);
int s=0;
int mi=11111;
for(int i=0;i<nums.length;i++){
if(k>0&&nums[i]<0){
nums[i]=-nums[i];
k--;
}
mi = Math.min(mi,Math.abs(nums[i]));
s=s+nums[i];
}
if(k==0){
return s;
}
else{
if(k%2==0){
return s;
}
else{
return s-2*mi;
}
}

}
}


Acwer
1天前
/*
i=j+a[i]-1
*/
import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;

public class Main {

public static void main(String[] args){
Scanner scan = new Scanner(System.in);
int temp = scan.nextInt();
while(temp!=0){

int a[][] = new int[temp][temp];
fun(a,temp);
for(int i=0;i<temp;i++){
for(int j=0;j<temp;j++){
System.out.print(a[i][j]+" ");
}
System.out.println();
}
System.out.println();
temp = scan.nextInt();
}
}

public static void fun(int a[][],int temp){
for(int i=0;i<temp;i++){
for(int j=0;j<temp;j++){
a[i][j] = Math.abs(i-j)+1;
}
}
}
}


Acwer
1天前

12的最后一位时2， * 15=30，则为3，问题是12*15=180，为8，两

import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;

public class Main {

public static void main(String[] args){
Scanner scan = new Scanner(System.in);
int n = scan.nextInt();
int s = 1;
for(int i=1;i<=n;i++){
s=s*i;
while(s%10==0){
s=s/10;
}
s=s%10;
}
System.out.println(s%10);
}
}


Acwer
1天前
import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;

public class Main {

public static void main(String[] args){
Scanner scan = new Scanner(System.in);
int n = scan.nextInt();
int s = 1;
for(int i=1;i<=n;i++){
s=s*i;
while(s%10==0){
s=s/10;
}
s=s%100000;
}
System.out.println(s%10);
}
}


Acwer
1天前
/*
如果数组元素是int，char类型，用普通的数组即可，
如果数组是String,object类型，用ArrayList即可。
*/
import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;

public class Main {

public static void main(String[] args){
Scanner scan = new Scanner(System.in);
int n = scan.nextInt();
int m = scan.nextInt();
int a[] = new int[n];
for(int i=0;i<n;i++){
a[i] = scan.nextInt();

}
Arrays.sort(a);
//双指针
int l = 0,r = a.length-1;
int flag=0;  //0表示没有找到
while(l<r){
if(a[l]+a[r]>m){
r--;
}
else if(a[l]+a[r]<m){
l++;
}
else{
flag = 1;
break;
}
}
if(flag==1){
System.out.println(a[l]+" "+a[r]);
}
else{
System.out.println("No Solution");
}
}
}


Acwer
2天前
class Solution {
public boolean checkPerfectNumber(int num) {
int s=0;
if(num==1){
return false;
}
for(int i=1;i*i<=num;i++){
if(num%i==0){
if(i*i==num){
s=s+i;
break;
}
s=s+i;
if(i!=1)
s=s+(num/i);
}
}
if(s==num){
return true;
}
return false;
}
}


Acwer
2天前
class Solution {
public boolean detectCapitalUse(String word) {
int a[] = new int[2];
int flag=0;    //判断首字母是否是大写，0表示小写。
for(int i=0;i<word.length();i++){
if(word.charAt(i)>='A'&&word.charAt(i)<='Z'){
if(i==0){
flag=1;
}
a[0]++;
}
else{
a[1]++;
}
}
if(a[0]==0&&a[1]!=0){
return true;
}
if(a[0]!=0&&a[1]==0){
return true;
}
if(word.length()>1&&flag==1&&a[0]==1){
return true;
}
return false;

}
}