Applying a key value dictionary pair to multiple column in a dataframe

I need to apply changes into current dataframe in 2 columns with a dictionary key to one column and value to another column for each value coming from dict data. I am not able to find any way to do that for eg.

test = {'a':32, 'b':21, 'c':92}

dataframe looks forms like

date       bre     result             cost

2021-03-01 dev gcp.a.inv.test.3232   30
2021-03-01 prd gcp.d.inv.ds.3254   35
2021-03-01 dev gcp.j.inv.ds.32632   98
2021-03-01 prd gcp.b.inv.ds.3254   94

I am aware of writing into one column at a time using below command

acc['result'] = acc.apply(lambda x: [f'{kind}.{squ}.{inv}.{self.name}.{x.label}' for squ, cost in test.items()], axis=1)

after adding changes from the dictionary on result and cost column dataframe should look like below

date       bre     result             cost

2021-03-01 dev gcp.a.inv.test.3232   30
2021-03-01 prd gcp.d.inv.ds.3254   35
2021-03-01 dev gcp.j.inv.ds.32632   98
2021-03-01 prd gcp.b.inv.ds.3254   94
2021-03-01 dev gcp.a.inv.test.3232  32 
2021-03-01 prd gcp.b.inv.ds.3254   21  
2021-03-01 dev gcp.c.inv.ds.3232   92

above you notice last 3 rows are being added by taking test dictionary key values each being added in result and cost. so in above squ is being applied to result column and cost needs to be added to cost column simultaneously i.e relevant row should be added in both the columns for each key value pair,

once they are added we need to also sort in such a way based on result column such that cost rows gets added to any duplicates based on result column and eliminate the duplicates of result rows.

so output should look like this

date       bre     result             cost

2021-03-01 dev gcp.a.inv.test.3232   62
2021-03-01 prd gcp.d.inv.ds.3254   35
2021-03-01 dev gcp.j.inv.ds.32632   98
2021-03-01 prd gcp.b.inv.ds.3254   115  
2021-03-01 dev gcp.c.inv.ds.3232   92

Can someone please guide me.