import java.util.*;
public class Main {
static Scanner in = new Scanner(System.in);
public static void main(String args[]) {
Map<Integer, Goods> list = new TreeMap<Integer, Goods>();
int n = in.nextInt();
for (int i = 0; i < n; i++) {
int id = in.nextInt();
String name = in.next();
String producer = in.next();
double cost = in.nextDouble();
int stock = in.nextInt();
Goods goods = new Goods(id, name, producer, cost, stock);
list.put(id, goods);
}
int t = in.nextInt();
int[] a = new int[10000];
for (int i = 0; i < a.length; i++) {
a[i] = 0;
}
for (int i = 0; i < t; i++) {
int id = in.nextInt();
int count = in.nextInt();
int symble = in.nextInt();
if (symble == 1) {
if (list.get(id).stock >= count) {
list.get(id).stock -= count;
a[id] += count;
}
else{
a[id]+=list.get(id).stock;
list.get(id).stock=0;
}
}
if (symble == 2) {
if(count>a[id]){
list.get(id).stock+=a[id];
a[id]=0;
}else{
a[id]-=count;
list.get(id).stock+=count;
}
}
if (symble == 3) {
if (list.get(id).id == id) {
list.get(id).stock += a[id];
a[id] = 0;
}
}
}
int cnt = 0;
for (Integer g : list.keySet()) {
if (a[g] > 0) {
cnt++;
}
}
double sum = 0;
System.out.println(cnt);
for (Map.Entry<Integer,Goods> g : list.entrySet()) {
if (a[g.getKey()] > 0) {
System.out.print(g.getValue().id+"\t"+g.getValue().name+"\t"+g.getValue().producer+"\t");
System.out.printf("%.2f", g.getValue().cost);
System.out.println("\t"+g.getValue().stock+"\t"+a[g.getKey()]);
sum += g.getValue().cost * a[g.getKey()];
}
}
System.out.printf("%.2f", sum);
System.out.println();
}
}
class Goods {
String name, producer;
int id, stock;
double cost;
public Goods(int id, String name, String producer, double cost, int stock) {
this.id = id;
this.name = name;
this.cost = cost;
this.producer = producer;
this.stock = stock;
}
}
购物车 sdut3869
最新推荐文章于 2022-10-24 17:32:48 发布