華為OD機考-貨幣單位換算-字符串(JAVA 2025B卷)

在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述
純暴力解法

import java.util.*;
public class ExchangeMoney {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);while(scanner.hasNextLine()){int count = Integer.parseInt(scanner.nextLine());List<String> strings = new ArrayList<>(count);for(int i=0;i<count;i++){strings.add(scanner.nextLine());}solve(strings);}}private static void solve(List<String> strings) {Integer sum =0;for (String s:strings){boolean fen = s.contains("fen");boolean cny = s.contains("CNY");boolean hkd = s.contains("HKD");boolean cents = s.contains("cents");boolean jpy = s.contains("JPY");boolean sen = s.contains("sen");boolean eur = s.contains("EUR");boolean eurocents = s.contains("eurocents");boolean gbp = s.contains("GBP");boolean pence = s.contains("pence");// CNYif(cny&&fen){//20CNY53fenString fen1 = s.split("fen")[0];String[] cnies = fen1.split("CNY");Double yuan = Double.parseDouble(cnies[0]);Double fentemp = Double.parseDouble(fen1.substring(cnies[0].length()+3));sum+= (int)  (yuan*100+fentemp);}else if(cny){sum+= (int) Double.parseDouble(s.substring(0,s.length()-3))*100;}else if(fen){sum+=(int)  Double.parseDouble(s.substring(0,s.length()-3));}// HKDif(hkd&&cents){//20HKD53centsString fen1 = s.split("cents")[0];String[] cnies = fen1.split("HKD");Double yuan = Double.parseDouble(cnies[0]);Double fentemp = Double.parseDouble(fen1.substring(cnies[0].length()+3));sum+= (int) (yuan/123 *100 *100+ fentemp/12300 *100 *100);}else if(hkd){sum+= (int) (Double.parseDouble(s.substring(0,s.length()-3))/123*100*100);}else if(cents){sum+= (int) (Double.parseDouble(s.substring(0,s.length()-3))/12300 *100 *100);}// JPYif(jpy&&sen){//20JPY53senString fen1 = s.split("sen")[0];String[] cnies = fen1.split("JPY");Double yuan = Double.parseDouble(cnies[0]);Double fentemp = Double.parseDouble(fen1.substring(cnies[0].length()+3));sum+= (int) (yuan/1825 *100 *100+fentemp/182500 * 100 *100);}else if(jpy){sum+= (int) (Double.parseDouble(s.substring(0,s.length()-3))/1825*100*100);}else if(sen){sum+= (int) (Double.parseDouble(s.substring(0,s.length()-3))/182500 *100 *100);}// EURif(eur&&eurocents){//20EUR53eurocentsString fen1 = s.split("eurocents")[0];String[] cnies = fen1.split("EUR");Double yuan = Double.parseDouble(cnies[0]);Double fentemp = Double.parseDouble(fen1.substring(cnies[0].length()+3));sum+= (int) (yuan/14*100*100+fentemp/1400 *100 *100);}else if(eur){sum+= (int) (Double.parseDouble(s.substring(0,s.length()-3))/14*100*100);}else if(eurocents){sum+= (int) (Double.parseDouble(s.substring(0,s.length()-3))/1400*100*100);}// GBPif(gbp&&pence){//20GBP53penceString fen1 = s.split("pence")[0];String[] cnies = fen1.split("GBP");Double yuan = Double.parseDouble(cnies[0]);Double fentemp = Double.parseDouble(fen1.substring(cnies[0].length()+3));sum+= (int) (yuan/12*100*100+fentemp/1200*100*100);}else if(gbp){sum+= (int) (Double.parseDouble(s.substring(0,s.length()-3))/12*100*100);}else if(pence){sum+= (int) (Double.parseDouble(s.substring(0,s.length()-3))/1200*100*100);}}System.out.println(sum);}
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/83693.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/83693.shtml
英文地址,請注明出處:http://en.pswp.cn/web/83693.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

系統學習·PHP語言

由于之前沒系統的學習PHP語言&#xff0c;都是在做題時遇到不會的才去查&#xff0c;后來發現這樣的效率非常低&#xff0c;審代碼別人一眼掃出漏洞&#xff0c;而我還需要去查一下這行代碼的意思&#xff0c;那個函數的作用&#xff0c;查當然要查&#xff0c;但連簡單的語法都…

leetcode2-兩數相加

leetcode 2 思路 鏈表特性利用&#xff1a;由于數字按逆序存儲&#xff0c;個位在鏈表頭部&#xff0c;因此可以直接從前往后遍歷鏈表進行逐位相加 比如題目中的 2->4->3 和 5->6->4 其實可以直接按位從第一位開始往后相加&#xff0c;就得到啦708 這樣比把數字…

Java的Arrays.sort():排序算法與優化分析

文章目錄 前言一、基本類型數組&#xff1a;雙軸快速排序關鍵優化策略 二、對象數組&#xff1a;TimSort關鍵優化策略 三、性能對比總結總結 前言 在Java中&#xff0c;Arrays.sort()是開發者最常用的排序方法之一。但你是否思考過它的底層實現&#xff1f;本文將基于OpenJDK …

軟件測試質量的“防”與“治”

引言: 想象一下,你正在建造一座摩天大樓。你是愿意在打地基時就嚴格檢查材料規格和設計圖紙(主動防患),還是等到大樓封頂后才開始拿著錘子敲敲打打找裂縫(被動補救)?軟件世界亦是如此!今天,我們就來聊聊軟件測試這個“質量守護神”的兩大戰略思維和三大實戰招式,讓你…

TDengine 如何從 2.x 遷移到 3.0

本節講述如何通過 Explorer 界面創建數據遷移任務&#xff0c;從舊版 TDengine2 遷移數據到 TDengine 3.0 集群。 功能概述 taosX 通過 SQL 查詢源集群數據&#xff0c;并把查詢結果寫入到目標數據庫。具體實現上&#xff0c;taosX 以一個子表的一個時間段的數據作為查詢的基…

免下載蘋果 IPA 文件重簽名工具:快速更換應用名稱和 BID的教程

在iOS設備的使用和開發過程中&#xff0c;我們有時需要對IPA文件進行重簽名&#xff0c;以便更換應用名稱、Bundle ID&#xff08;軟件包標識符&#xff09;或其他相關信息。這一過程通常需要使用到特定的工具&#xff0c;然而&#xff0c;市面上的一些工具可能需要下載和安裝&…

Python全棧開發:前后端分離項目架構詳解

文章目錄 技術棧選擇后端技術棧前端技術棧 項目整體結構詳細目錄結構說明后端架構&#xff08;backend/&#xff09;1. 應用核心&#xff08;app/&#xff09;2. 數據層&#xff08;models/&#xff09;3. API模式層&#xff08;schemas/&#xff09;4. API路由層&#xff08;a…

微信小程序使用圖片實現紅包雨功能

微信小程序紅包雨功能實現&#xff1a;從組件封裝到頁面調用的完整實踐 先看示例截圖&#xff1a; 一、背景與技術選型 在微信小程序營銷活動中&#xff0c;紅包雨是一種極具吸引力的互動形式。實現紅包雨效果主要有 Canvas 和圖片兩種方案&#xff1a; &#xff08;1&…

Python day31

浙大疏錦行 數據拆分的基本框架&#xff0c;拆分后讓項目結構更加清晰

Chapter10-XXE

文章目錄 1.XXE介紹1.1 XXE產生的原因1.1.1 什么是XML&#xff1f;1.1.2 什么是XML實體1.1.3 什么是文檔類型定義&#xff08;document type definition&#xff09;1.1.4 什么是XML自定義實體1.1.5 什么是XML外部實體 2.XXE攻擊類型2.1 利用XXE檢索文件2.2 利用XXE執行SSRF攻擊…

Ribbon負載均衡實戰指南:7種策略選擇與生產避坑

引言&#xff1a;客戶端負載均衡的不可替代性 當面試官問你&#xff1a;“Ribbon 和 Nginx 有什么區別&#xff1f;”——Ribbon 是進程內 LB 這一句話值 20K 月薪。 作為微服務調用的核心樞紐&#xff0c;Ribbon 通過 ??本地服務清單動態分發請求??&#xff0c;避免中心化…

Webpack:現代前端構建工具的核心解析

Hi&#xff0c;我是布蘭妮甜 &#xff01;在前端工程化日益重要的今天&#xff0c;Webpack作為主流構建工具&#xff0c;已成為現代前端開發的核心基礎設施。它通過模塊化打包機制&#xff0c;優雅地解決了復雜應用中的資源管理問題&#xff0c;使開發者能夠專注于業務邏輯的實…

Elasticsearch索引wildcard查詢

在之前的文章 Elasticsearch索引的字段映射 中介紹過關于索引中字段查詢的多種方式。可以根據需要通過設置索引字段的type以及fields來實現分詞,精確匹配等多種方式的查詢。 elasticSearch中檢索核心類型大概可以分為:精準匹配檢索(Term-level queries)和基于分詞的全文匹…

1.3、SDH光接口類型

接口類型的命名遵循一個特定的代碼結構&#xff0c;格式通常為&#xff1a;應用代碼-速率等級.波長/距離代碼。 代碼的第一位字母表示應用場合&#xff1a;I 表示局內通信&#xff1b;S 表示短距離局間通信&#xff1b;L 表示長距離局間通信。字母橫杠后的第一位表示 STM 的速率…

淺析MySQL數據遷移與恢復:從SQLServer轉型到MySQL

文章目錄 前言一、MySQL與SQLServer數據管理方式對比1.1 文件結構差異&#xff1a;1.2 存儲引擎多樣性&#xff1a;1.3 備份恢復方式&#xff1a; 二、MySQL數據遷移方法與技術2.1 邏輯備份與恢復2.2 物理備份與恢復2.3 異構數據庫遷移(從SQLServer到MySQL) 三、MySQL數據恢復策…

HarmonyOS 5中UniApp的調試步驟

在 HarmonyOS 5 中調試 UniApp 應用的完整步驟如下&#xff0c;涵蓋環境配置、設備連接及調試方法&#xff1a; 一、環境準備 ?開發工具? 安裝 HBuilderX 4.64&#xff08;需啟用鴻蒙插件&#xff09;可選安裝 DevEco Studio 5.0.3&#xff08;用于真機調試&#xff09;配置 …

使用centos服務器和Let‘s Encypted配置SpingBoot項目的https證書

一、Centos安裝Certbot客戶端 yum install certbot 二、生成證書 certbot certonly --standalone -d 你的域名 執行該命令后會生成如下文件 privkey.pem : the private key for your certificate. fullchain.pem: the certificate file used in most server software. c…

AWS Well-Architected Framework詳解

一、六大支柱&#xff08;Well-Architected Framework&#xff09; AWS Well-Architected Framework 的實際操作可以通過其五大支柱&#xff08;或六大支柱&#xff0c;包括可持續性&#xff09;的具體實踐來證明。以下是每個支柱對應的實際操作示例&#xff1a; 卓越運營&am…

【特征工程】機器學習的特征構造和篩選

調研論文中&#xff0c;看到datafun的一篇agent文章“智能不夠&#xff0c;知識來湊”——知識驅動的金融決策智能體&#xff0c;里面提到了自動因子挖掘&#xff0c;感覺可以用來做機器學習的“特征工程”。 第一部分介紹如何“構造特征”&#xff0c;第二部分介紹如何“分析…

第21節 Node.js 多進程

Node.js本身是以單線程的模式運行的&#xff0c;但它使用的是事件驅動來處理并發&#xff0c;這樣有助于我們在多核 cpu 的系統上創建多個子進程&#xff0c;從而提高性能。 每個子進程總是帶有三個流對象&#xff1a;child.stdin, child.stdout和child.stderr。他們可能會共享…