本文主要是介绍pdd笔试题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
拼多多提前批的笔试没有报名,但昨天听伙伴们说很难,所以一共4道题,挑了2道会的,自己编了一下。
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;int main()
{int K, N;cin >> K;cin >> N;vector<int>a(N);for (int i = 0; i < N; i++)cin >> a[i];int cur = K;int count = 0;int i = 0;for (; i < N; i++){cur -= a[i];if (cur == 0){cout << "paradox" << endl;break;}else if (cur < 0){cur = -cur;count++;}}if (i == N){cout << cur << " " << count << endl;}system("pause");return 0;
}
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
class Node
{
public:int delicious_value;int caloric_value;Node(int caloric_value, int delicious_value) :delicious_value(delicious_value), caloric_value(caloric_value) {}};
class myfunctor
{
public:bool operator()(const Node&node1, const Node&node2){return node1.delicious_value > node2.delicious_value;}
};
int main()
{vector<Node>lunch;vector<Node>dinner;int N, M, T;cin >> N;//N种中饭cin >> M;//M种晚饭cin >> T;for (int i = 0; i < N; i++){int caloric, delicious;cin >> caloric;cin >> delicious;lunch.push_back(Node(caloric, delicious));}for (int i = 0; i < M; i++){int caloric, delicious;cin >> caloric;cin >> delicious;dinner.push_back(Node(caloric, delicious));}sort(lunch.begin(), lunch.end(), myfunctor());//按美味值降序排列sort(dinner.begin(), dinner.end(), myfunctor());if (T == 0)cout << 0 << endl;//特例else{int res = INT_MAX;//接下来分类讨论//1.中饭必吃,晚饭可吃可不吃for (int i = 0; i < N; i++){if (lunch[i].delicious_value >= T)//晚饭不吃{res = min(res, lunch[i].caloric_value);continue;}for (int j = 0; j < M; j++)//晚饭吃{if (lunch[i].delicious_value + dinner[j].delicious_value >= T)res = min(res, lunch[i].caloric_value + dinner[j].caloric_value);elsebreak;}}//2.晚饭必吃,中饭可吃可不吃for (int i = 0; i < M; i++){if (dinner[i].delicious_value >= T)//中饭不吃{res = min(res, dinner[i].caloric_value);continue;}for (int j = 0; j < N; j++)//中饭吃{if (dinner[i].delicious_value + lunch[j].delicious_value >= T)res = min(res, dinner[i].caloric_value + lunch[j].caloric_value);elsebreak;}}if (res == INT_MAX)cout << -1 << endl;elsecout << res << endl;}system("pause");return 0;
}
这篇关于pdd笔试题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!