- 总时间限制:
- 1000ms
- 内存限制:
- 32767kB
- 描述
-
八戒学完了算术,师父打算给八戒一个买礼物的任务。他们即将到达女儿国,师父给八戒m个盘缠,要他去买些礼物,已备到时候用作给女儿国国王、大臣们的见面礼。因为不知道即将来迎接他们的人数,为了尽可能让女儿国的小姐姐们高兴,师父要八戒尽量多买几件礼物备着。
领了任务,拿了盘缠的八戒来到不远处的礼品店,他发现店里一共有n件商品,每件商品各有价格。于是,八戒要算一算手里的m个盘缠,最多能买几件礼物。
- 输入
- 共2行,第一行包含两个整数n和m,n表示礼物总数,m表示师傅给八戒的盘缠;
第二行包含n个整数,分别表示每件礼物的价格。
题目保证:
1<= n <=500
1<= m <=10000
1<= 每件礼物的价格 <=1000 - 输出
- 八戒最多能买到的礼物个数
- 样例输入
5 6040 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
- 描述
- 在线性代数、计算几何中,向量点积是一种十分重要的运算。
给定两个n维向量**a**=(a1,a2,...,an)和**b**=(b1,b2,...,bn),求点积**a**·**b**=a1b1+a2b2+...+anbn。
- 输入
- 第一行是一个整数n。1 <= n <= 1000。
第二行包含n个整数a1,a2,...,an。
第三行包含n个整数b1,b2,...,bn。
相邻整数之间用单个空格隔开。每个整数的绝对值都不超过1000。 - 输出
- 一个整数,即两个向量的点积结果。
- 样例输入
31 4 62 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 }
原文链接: https://www.cnblogs.com/dss-99/p/14032686.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/205363
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!