C++数组

总时间限制: 
1000ms
 
内存限制: 
32767kB
描述

八戒学完了算术,师父打算给八戒一个买礼物的任务。他们即将到达女儿国,师父给八戒m个盘缠,要他去买些礼物,已备到时候用做给女儿国国王、大臣们的见面礼。由于不知道即未来迎接他们的人数,为了尽量让女儿国的小姐姐们高兴,师父要八戒尽可能多买几件礼物备着。ios

领了任务,拿了盘缠的八戒来到不远处的礼品店,他发现店里一共有n件商品,每件商品各有价格。因而,八戒要算一算手里的m个盘缠,最多能买几件礼物。spa

输入
共2行,第一行包含两个整数n和m,n表示礼物总数,m表示师傅给八戒的盘缠;
第二行包含n个整数,分别表示每件礼物的价格。
题目保证:
1<= n <=500
1<= m <=10000
1<= 每件礼物的价格 <=1000
输出
八戒最多能买到的礼物个数
样例输入
5 60
40 20 10 20 30
样例输出
3
 1 #include<iostream>
 2 #include<algorithm>
 3 using namespace std;
 4 int main()
 5 {
 6     int n,m;
 7     cin>>n>>m;
 8     int a[n];
 9     for(int i=0;i<n;++i){
10         cin>>a[i];
11     }
12 
13     int sum=0;
14     sort(a,a+n);
15     if(a[0]>m)
16     {
17         cout<<0;
18         return 0;
19     }
20     for(int i=0;i<n;++i)
21     {
22         sum+=a[i];
23         if(i<n-1)
24         {
25             if(sum<=m&&m<sum+a[i+1])
26             {
27                 cout<<i+1;
28                 return 0;
29             }
30             if(sum==sum+a[i+1])
31             {
32                 cout<<i+2;
33                 return 0;
34             }
35 
36         }
37 
38     }
39     if(m>=sum)
40     {
41         cout<<n;
42         return 0;
43     }
44 }
总时间限制: 
1000ms
 
内存限制: 
65536kB
描述

在线性代数、计算几何中,向量点积是一种十分重要的运算。code

给定两个n维向量a=(a1,a2,...,an)和b=(b1,b2,...,bn),求点积a·b=a1b1+a2b2+...+anbnblog

输入
第一行是一个整数n。1 <= n <= 1000。
第二行包含n个整数a1,a2,...,an。
第三行包含n个整数b1,b2,...,bn。
相邻整数之间用单个空格隔开。每一个整数的绝对值都不超过1000。
输出
一个整数,即两个向量的点积结果。
样例输入
3
1 4 6
2 1 5
样例输出
36
 1 #include<iostream>
 2 using namespace std;
 3 int main()
 4 {
 5     int n,a[1000],b[1000];
 6     cin>>n;
 7     for(int i=0;i<n;++i)
 8     {
 9 
10         cin>>a[i];
11     }
12     for(int i=0;i<n;++i)
13     {
14 
15         cin>>b[i];
16     }
17     int k=0;
18     for(int i=0;i<n;++i)
19     {
20         k+=a[i]*b[i];
21 
22     }
23     cout<<k;
24 
25     return 0;
26 }
相关文章
相关标签/搜索