言語
swift
やりたいこと
辞書型の要素を同じキー同士の値を加算していきたいです。
例) ["A":2,"A":3,"B":1,"C":1]
同じキーの要素どうしでvalueを加算
["A":5,"B":1,"C":1]
どのような方法がいいのでしょうか。
調べてみましたが、解決することができませんでした。
ご回答よろしくお願いいたします。
どう調べたのでしょうか?
検索キーワードなどや、出てきた記事のURLなどを記載ください。
また、今記載いただいているものは、カンマ区切りになっていますが、
配列の中に辞書型のデータが入っているのでしょうか?
(要は、そのデータの型がわからなければ回答しようがない)
辞書のデータが
["A":2 , "A":3, "B":1, "C":1]
だったとして(表現方法が違うことに気をつけてください)、
計算結果は
["A":5 , "A":3, "B":1, "C":1]
としたいのでしょうか、それとも
["A":5, "B":1, "C":1]
の間違いでしょうか。
あとは、miyabi_takatsukさんと同じ意見です。
すみません、修正しました。
["A":5, "B":1, "C":1]
という結果にしたいです。
修正後にご提示いただいた元データの
["A":2,"A":3,"B":1,"C":1]
ですが、これは文法的にエラーを含む(実行時エラーとなりうる)データとなりますが、それはご確認いただいていますでしょうか。
辞書(Dictionary)の初期登録時には同じキーを使うことはできませんので、ご自身の環境でご確認いただき、正しい元データをご提示いただけますでしょうか。
すみません、もう一度お願い致します。
同じキーだとエラーが出るということを確認していませんでした。
辞書型でというよりは、下記の結果になってほしいのです。
A 2
B 1
A 3
C 1
このように入力されたものを同じアルファベット同士で加算したいと考えています。
そして、
A 5
B 1
C 1
と、出力したいです。
よろしくお願い致します。
> このように入力されたものを同じアルファベット同士で加算したいと考えています。
入力、とはどういうことでしょうか?
ユーザーが入力した文字列を、辞書型に起こすという要件でしょうか?
それだとまるで話が変わってきますが・・・。
変換前のソースコードを記載していただかないと回答できないと思われます。
これは何かの題材なのでしょうか(題材をもとに質問していることを責めているわけではありません)。
miyabi_takatsukさんもおっしゃっているように「入力」がどのように与えられているかによって処理方法が全く異なってきます。
なんとなく、Paizaのごく初歩的な入出力問題に関する設問のような気もしますが。
問題に対する自己解釈はまったく構わないのですが、「何をみて」あるいは「与えられた課題はこういう内容で」という前提を記載して頂かないことには回答もできませんので、その点はよく考えてご投稿ください。