一道算法基础题 uva1586

问题描述

一道算法基础题 uva1586

题目链接在这儿 http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=830&page=show_problem&problem=4461

我自己做的代码如下 但是通不过 测了好多数据都没问题

 #include<cstdio>
#include<cstring>
using namespace std;
int main()
{
    int n;
    char str[1000][1000];
    double arr[1000];
    while (scanf("%d", &n) != EOF)
    {
        getchar();
        for (int i = 0; i < n; i++){
            gets(str[i]);
            double sum = 0;
            double thisEle = 0;
            double orign = 0;
            for (int j = 0; j < strlen(str[i]); j++){
                if (str[i][j] == 'C'){
                    sum += thisEle;
                    thisEle = 12.01;
                }
                else if (str[i][j] == 'H'){
                    sum += thisEle;
                    thisEle = 1.008;
                }
                else if (str[i][j] == 'O'){
                    sum += thisEle;
                    thisEle = 16.00;
                }
                else if (str[i][j] == 'N'){
                    sum += thisEle;
                    thisEle = 14.01;
                }
                else{
                    if (str[i][j - 1] >= 48 && str[i][j - 1] <= 57){
                        double temp = 10 * thisEle;
                        thisEle = temp + (str[i][j] - 48)*orign;
                    }
                    else{
                        orign = thisEle;
                        thisEle *= (str[i][j] - 48);
                    }
                }
            }
            sum += thisEle;
            arr[i] = sum;
        }
        for (int i = 0; i < n; i++){
        printf("%.3lfn", arr[i]);
        }
    }
}

解决方案

https://github.com/svanegas/programming_solutions/blob/master/UVa/1586%20-%20Molar%20Mass/1586.cpp

时间: 2024-08-20 00:42:54

一道算法基础题 uva1586的相关文章

分享一道java基础题,测测你是不是基础扎实

下面的这个题你知道输出结果是什么吗?试试吧!相信对每一个学java的同学都是有用的!说不定下次你去面试就是这个题!当然你是技术大牛可以忽略! 最新内容请见作者的GitHub页:http://qaseven.github.io/

一道Java基础题,来个牛人

问题描述 package com.huawei.test;import java.util.HashMap;public class HashTest {public static void main(String[] args) {getSize1();getSize2();}public static void getSize1(){HashMap<Object, String> instance = new HashMap<Object, String>();instance

io流-一道很基础的题,卡住了,求解

问题描述 一道很基础的题,卡住了,求解 题目为:1.读取本地文件message.txt,输入年份,输出当年的世界杯举办国以及冠军国,如果该年份没有举办世界杯,请输出"没有举办". System.in--->year:1931 读出来:存Map集合 1930 乌拉圭|乌拉圭 1934 意大利|意大利 解决方案 用filestream读取,split分隔装入hashmap 解决方案二: 基础的一道题分享一道java基础题,测测你是不是基础扎实一道用冒泡排序做数组的题,求解

一道算法题,看看大家的思路(续)

"一道算法题,看看大家的思路",看了众多的回复,本人愚钝,没有看明白其中的奥妙.在细细研究<编程之美>中的文章后,终于理解了这个算法的思路.现将这个算法的演算过程以及代码实现(VB2005)赋予其后,和各位交流. 现再将题目复述一遍: 题目描述:有31,-41,59,26,-53,58,97,-93,-23,84十个数.SUM(N,M)表示从第N个数到到第M个数的和.例如:SUM(2,3)=-41+59=18.问:最大的和是多少?对应的N和M是多少? 先不管N和M的计算,直

csdn-acm的一道矩阵扩散题(c语言,好像是一个算法)

问题描述 acm的一道矩阵扩散题(c语言,好像是一个算法) 我只记得大概的思想.一个n×n的矩阵(应该有限定n),把abcd随机填放在矩阵中,然后照着某一个方向扩散(比如上下左右,a在一行一列,照着下扩散二行一列也是a),最后计算题目中abcd的个数.万能的csdn,有谁做过这道题吗,想找到题目,一直找不到,只记得思想大概是这样 解决方案 有哪位大神知道的吗!!! 解决方案二: 有哪位大神知道的吗!!! 解决方案三: 有哪位大神知道的吗!!! 解决方案四: 有哪位大神知道的吗!!!

求助一道算法题,关于数组算法

问题描述 求助一道算法题,关于数组算法 有一个字符串数组{"用户1,商品1,200","用户2,商品2,100","用户3,商品1,300","用户4,商品3,50","用户5,商品3,50"},写的方法需要返回的是{"用户2,商品2","用户3,商品1","用户4,商品3"}也就是说比较下每种商品的最高价格是谁,并返回谁买了,如果价格相同取最先买

从一道算法题说去1

声明:算法学习来自,7月算法,面试&算法&机器学习&找工作就上七月算法 1. 今天学习的算法是 LCS,最长公共子序列,属于典型的动态规划基础题.     十分钟搞定LCS 学习视频:http://julyedu.com/video/play/id/9 2. 实践代码: /* Algorithm LCS */ #include <stack> #include <cstdio> #include <string> #include <ios

逻辑题-一道算法或者逻辑面试题,求思路

问题描述 一道算法或者逻辑面试题,求思路 100个面值是1-50随机分布的硬币排成一列,你和另一个人一人一个的取,只能从队列头部和尾部取.如何保证最后你取的硬币面值和比你对手多? 解决方案 保证你取倒数第二张? 还是和最大? 1-50 面值按照谁家的硬币? 美元? 美元面值: 现流通硬币有1 分.5 分.10分.1/4 元.1/2 元.1 元六种面值. 正面与背面所铸图案如下: 1 分 - 正面: Lincoln 林肯 ,背面:林肯纪念堂 5 分 - 正面:Jefferson 杰佛逊 ,背面:杰

排列组合 算法-问一道排列组合题 一组数据 随机选四个数组成四元组,请问总共有多少个偶排列,

问题描述 问一道排列组合题 一组数据 随机选四个数组成四元组,请问总共有多少个偶排列, 问一道排列组合题 一组数据 随机选四个数组成四元组,请问总共有多少个偶排列,数组例如(±1.6,±1,±0.6,0) 七选四 解决方案 840-------偶排列数:420 程序 public class test { static void f(double[] a,int n,String v){ if(n==a.length){ System.out.println(v); }else{ f(a,n+1