全部评论
工人调度有没有老哥分享一下
第一题直接示例恰烂分0.09,第二题0.91
话说滴滴这个把行测放进来是真的……感觉要完蛋……
垃圾分类直接(n*(n-1)/2-m)/2 能过9%
过了2.0😁
第一题不会。
第二题AC,维护一个deque,长度大于m时,要是deque前面的和大于0就删掉,不大于0就留着。
第一题感觉是拓扑排序,后面没时间写了,每次把图入度为0的点当作一类垃圾
Python3 第一题过55% 第二题以为是连续三个数之和,只AC了9🙁 第一题代码: while True:
try:
carA = []
carB = []
n, m = map(int, input().split())
tmp = [i+1 for i in range(n)]
for i in range(m):
a, b = map(int, input().split())
if a in tmp:
carA.append(a)
tmp.remove(a)
if b in tmp:
carB.append(b)
tmp.remove(b)
while tmp:
if len(carA) < len(carB):
carA.append(tmp.pop())
elif len(carA) > len(carB):
carB.append(tmp.pop())
elif len(tmp) > 1:
while len(carA) == len(carB):
if len(tmp) == 1:
break
carA.append(tmp.pop())
carB.append(tmp.pop())
elif len(tmp) == 1:
break
print(len(carA )+len(carB))
except:
break
第一题万年0.45 第二题0.82 搞不对了
哇 你们也太会蹭分了吧,这都能55%,暴力半天只能27%
第二题用动态规划,dp[i]=Math.min(dp[i-1]+a[i],[前m-1个数]+a[i])
有么有大佬给个思路
我觉得我第二题没问题,至少m也是理解了,但是为什么0.45,严重怀疑数据
垃圾分类呀写呀
第一题直接输出给的值,能过55%😂😂😂
第二题暴力法过了45(超时),正常思路反而只有18什么鬼 import java.util.Scanner;
public class Main {
public static void main( String[] args ) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int m = sc.nextInt();
int[] a = new int[n];
for(int i=0;i<n;i++) {
a[i] = sc.nextInt();
}
int res = 0;
if(m >= n) {
for(int i=0;i<n;i++) {
res += a[i];
}
System.out.println(res);
}else {
res = Integer.MAX_VALUE;
int[][] dp = new int[n+1][n+1];
for(int i=1;i<=n;i++) {
for(int j=i;j<=n;j++) {
dp[i][j] = dp[i][j-1] + a[j-1];
if(j - i + 1 >= m && dp[i][j] < res) {
res = dp[i][j];
}
}
}
System.out.println(res);
}
}
}
选择题是个什么东西,看着那个图困死我了
两题AC了……emm不过感觉思路也不一定对,等过了时间咱在聊
第一题没做;第二题用前缀和加暴力法过了百分之80多,剩下的超时了,感觉第二题正确做法应该是用动态规划
不会做,xjb写交卷跑路,第一题0.55,第二题0.45
相关推荐