#33748: 有人能幫我看看這樣哪裡錯


jone921216@gmail.com (鍾帛勳)

學校 : 不指定學校
編號 : 143713
來源 : [125.231.115.211]
最後登入時間 :
2023-06-26 22:29:47
j123. 2. 運貨站 -- 2022年10月APCS | From: [125.231.6.203] | 發表日期 : 2023-01-30 13:43

#include <iostream>

 

using namespace std;

 

int main(){
int r, c, n;
cin >> r >> c >> n;
int space[r];
int thing[n][2];
int i, j;
char kind;
int gap, trash=0, sum=0;
int truespace = c-1;
for (i=0;i<r;i++){
space[i] = 0;
}
for (i=0;i<n;i++) {
cin >> kind >> gap;
if (kind == 'A'){
if (space[gap] +1 < c && space[gap+1] +1 < c && space[gap+2] + 1 < c
&& space[gap+3] +1 < c){
space[gap] +=1;
space[gap+1] += 1;
space[gap+2] += 1;
space[gap+3] += 1;
} else {
trash++;
}
 
}
else if (kind == 'B') {
if (space[gap] + 3 < c) {
space[gap] += 3;
}else {
trash++;
}
 
我把二維陣列裡面全部的一家起來變成一維陣列

 

}
else if (kind == 'C'){
if (space[gap] + 2 < c
&& space[gap+1] + 2 < c) {
space[gap] += 2;
space[gap+1] += 2;
}
else {
trash++;
}
}
else if (kind == 'D'){
if (space[gap] + 3 < c
&& space[gap+1] + 3 < c) {
space[gap] += 3;
space[gap+1] += 3;
}
else {
trash++;
}
 
}
else if (kind == 'E'){
if (space[gap] + 2 < c
&& space[gap+1] + 2 < c
&& space[gap+2] +2 < c) {
space[gap] += 2;
space[gap+1] += 2;
space[gap+2] += 2;
}
else {
trash++;
}
}
}
for (i=0;i<r;i++){
sum += c - space[i];
}
cout << sum << " " << trash ;
return 0;
}
 
#33783: Re: 有人能幫我看看這樣哪裡錯


cges30901 (cges30901)

學校 : 不指定學校
編號 : 30877
來源 : [101.136.203.77]
最後登入時間 :
2024-04-07 15:34:14
j123. 2. 運貨站 -- 2022年10月APCS | From: [59.115.12.20] | 發表日期 : 2023-02-02 20:10

貨物沒辦法分割,例如範例2的C 1 A 1,應該是長這樣:

可是你的程式會變成這樣:

 
ZeroJudge Forum