zoukankan      html  css  js  c++  java
  • UVA537 Artificial Intelligence?

    题目http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=96&page=show_problem&problem=478

    依次搜查就行了 要注意m,k,M这几个不是标准单位 要进行换算一下,写着有点麻烦,多注意一些。

    View Code
      1 #include <stdio.h>
      2 #include <stdlib.h>
      3 #include<string.h>
      4 char c[1001];
      5 float swit(char f,int j)
      6 {
      7     float s = 0,x;
      8     int y,i;
      9     i = j;
     10     while(c[j]>='0'&&c[j]<='9'&&j<strlen(c))
     11     {
     12         j++;
     13     }
     14     x = 1;
     15     y = j;
     16     y--;
     17     while(y>=i)
     18     {
     19         s += (c[y]-48)*x;
     20         x *= 10;
     21         y--;
     22     }
     23     x = 1.0/10;
     24     if(c[j] == '.')
     25     {
     26         j++;
     27         while(c[j]>='0'&&c[j]<='9'&&j<strlen(c))
     28         {
     29             s += (c[j]-48)*x;
     30             x = x/10;
     31             j++;
     32         }
     33     }
     34     if(j!=strlen(c))
     35     {
     36         if(c[j] == 'm')
     37             s = s/1000;
     38         if(c[j] == 'k' )
     39         s = s*1000;
     40         if(c[j] == 'M')
     41         s = s*1000000;
     42     }
     43     return s;
     44 }
     45 int main()
     46 {
     47     int t, i, j, k,count,flag,a[300],g = 0;
     48     float s,x,I,v,P;
     49     scanf("%d%*c", &t);
     50     while(t--)
     51     {
     52         g++;
     53         a['U'] = 1;
     54         a['I'] = 1;
     55         a['P'] = 1;
     56         flag = 0;
     57         count = 0;
     58         gets(c);
     59         k = strlen(c);
     60         for(i = 0  ; i < k ; i++)
     61         {
     62             if(i<k-2&&(c[i] == 'U'||c[i] == 'P'||c[i] == 'I')&&c[i+1] == '=')
     63             {
     64                 j = i+2;
     65                 s = swit(c[i],j);
     66 
     67                 if(c[i] == 'U')
     68                 {
     69                     v  = s;
     70                     count++;
     71                     a[c[i]] = 0;
     72                 }
     73                 if(c[i] == 'I')
     74                 {
     75                     I = s;
     76                     count++;
     77                     a[c[i]] = 0;
     78                 }
     79                 if(c[i] == 'P')
     80                 {
     81                     P = s;
     82                     count++;
     83                     flag = 1;
     84                     a[c[i]] = 0;
     85                 }
     86                 if(count == 2)
     87                 {
     88                     break;
     89                 }
     90                 i+=2;
     91             }
     92         }
     93         printf("Problem #%d\n",g);
     94         if(flag == 0)
     95         {
     96             printf("P=%.2fW\n",I*v);
     97         }
     98         else
     99         {
    100             if(a['U'] == 0)
    101             printf("I=%.2fA\n",P/v);
    102             else
    103             printf("U=%.2fV\n",P/I);
    104         }
    105         puts("");
    106     }
    107     return 0;
    108 }
  • 相关阅读:
    最流行的javascript 代码规范
    jquery里阻止冒泡ev.stopPropagation()
    jquery里阻止冒泡ev.stopPropagation()
    响应式页面设计原理
    fromCharCode()的用法
    slice的用法
    java 反转数组
    java 一个数组的长度
    Java访问数组
    java 数组的定义
  • 原文地址:https://www.cnblogs.com/shangyu/p/2520535.html
Copyright © 2011-2022 走看看