poj2403第一次用指针写程序

来源:互联网 发布:人才招聘网站系统源码 编辑:程序博客网 时间:2024/06/06 06:38
 
Hay Points
Time Limit: 1000MSMemory Limit: 65536K
Total Submissions: 2512Accepted: 1580

Description

Each employee of a bureaucracy has a job description - a few paragraphs that describe the responsibilities of the job. The employee's job description, combined with other factors, such as seniority, is used to determine his or her salary.
The Hay Point system frees the Human Resources department from having to make an intelligent judgement as to the value of the employee; the job description is merely scanned for words and phrases that indicate responsibility. In particular, job descriptions that indicate control over a large budget or management over a large number of people yield high Hay Point scores.

You are to implement a simplified Hay Point system. You will be given a Hay Point dictionary and a number of job descriptions. For each job description you are to compute the salary associated with the job, according to the system.

Input

The first line of input contains 2 positive integers: m <= 1000, the number of words in the Hay Point dictionary, and n <= 100, the number of job descriptions. m lines follow; each contains a word (a string of up to 16 lower-case letters) and a dollar value (a integer number between 0 and 1,000,000). Following the dictionary are the n job descriptions. Each job description consists of one or more lines of text; for your convenience the text has been converted to lower case and has no characters other than letters, numbers, and spaces. Each job description is terminated by a line containing a period.

Output

For each job description, output the corresponding salary computed as the sum of the Hay Point values for all words that appear in the description. Words that do not appear in the dictionary have a value of 0.

Sample Input

7 2administer 100000spending 200000manage 50000responsibility 25000expertise 100skill 50money 75000the incumbent will administer the spending of kindergarden milk moneyand exercise responsibility for making change he or she will shareresponsibility for the task of managing the money with the assistantwhose skill and expertise shall ensure the successful spending exercise.this individual must have the skill to perform a heart transplant andexpertise in rocket science.

Sample Output

700150150
第一次用指针写程序,虽然一些地方时借鉴的别人的,但这只是开始,还是蛮开心的。
这个程序以前写过几次,很繁琐而且都wrong了,改用指针以后,简洁多了。以前做错主要是
应为对scanf();函数的用法的了解不够,不知道在输入一个字符串时,若字符串中间有空格
则只能输入前面的部分。例如:
char a[10];
scanf("%s",a);
printf("%s",a);
若输入的字符串时get char,那么,输出的就应该是get,而不是get char。
 
代码如下:
#include<iostream>
using namespace std;
int main()
{
 int m,n,i,j;
 cin>>m>>n;
 long *v=new long[m];
 char **b=new char*[m];
 for(i=0;i<m;i++)
 {
  b[i]=new char[17];
  cin>>b[i]>>v[i];
 }
    char word[17];
 for(i=0;i<n;i++)
 {
  j=0;
  long res=0;
     while(cin>>word)
  {
       if(strcmp(word,".")==0)
       break;
    int k;
    for(k=0;k<m;k++)
          if(strcmp(word,b[k])==0)
         res=res+v[k];
  }
  cout<<res<<endl;
 }
 return 0;
}
	
				
		
原创粉丝点击