沈阳住房城乡建设部网站,南宁模板建站平台,广西住房和城乡建设部官网,政务网站建设的功能模块目录 pii struct bool pii 现在小龙同学要吃掉它们#xff0c;已知他有n颗苹果#xff0c;并且打算每天吃一个。 但是古人云#xff0c;早上金苹果#xff0c;晚上毒苹果。由此可见#xff0c;早上吃苹果和晚上吃苹果的效果是不一样的。 已知小龙同学在第 i 天早上吃苹果能… 目录 pii struct bool pii 现在小龙同学要吃掉它们已知他有n颗苹果并且打算每天吃一个。 但是古人云早上金苹果晚上毒苹果。由此可见早上吃苹果和晚上吃苹果的效果是不一样的。 已知小龙同学在第 i 天早上吃苹果能获得的愉悦值为 ai 晚上吃苹果能获得的愉悦值为 bi 。 但是为了饮食均衡小龙同学决定必须能选择恰好k天晚上吃苹果。 剩下的 n−k天早上吃苹果他想知道他能够获得最大的愉悦值是多少。 输入描述: 第一行两个正整数 nk 表示小龙同学有 nnn 个苹果n 天吃完他要选择其中 k 天在晚上吃苹果。 接下来 n 行每行两个整数 ai,bi 表示小龙同学在第 iii 天早上吃苹果能获得的愉悦值为 ai 晚上吃苹果能获得的愉悦值为 bi 。 输出描述: 输出一行一个整数表示答案。 示例1 输入 复制 4 3 3 1 4 5 2 3 1 5 输出 复制 16 #includeiostream
#includealgorithm
#includecstringusing namespace std;typedef long long LL;
typedef pairint,int pii;const int N 200010;pii a[N];
int n,k;bool cmp(pii a,pii b){return (a.second-a.first)(b.second-b.first);
}int main(){cinnk;for(int i0;in;i){int x0,y0;cinxy;a[i]{x,y};}sort(a,an,cmp);int sum0;for(int i0;ik;i){suma[i].second;}for(int ik;in;i){suma[i].first;}coutsum;return 0; }struct 小蓝对一个数的数位之和很感兴趣, 今天他要按照数位之和给数排序。当 两个数各个数位之和不同时, 将数位和较小的排在前面, 当数位之和相等时, 将数值小的排在前面。 例如, 2022 排在 409 前面, 因为 2022 的数位之和是 6, 小于 409 的数位 之和 13 。 又如, 6 排在 2022 前面, 因为它们的数位之和相同, 而 6 小于 2022 。 给定正整数 ,n,m, 请问对 1 到 n 采用这种方法排序时, 排在第 m 个的元 素是多少? 输入格式 输入第一行包含一个正整数 n 。 第二行包含一个正整数 m 。 输出格式 输出一行包含一个整数, 表示答案。 样例输入 13
5 样例输出 3 #includeiostream
#includealgorithm
#includecstringusing namespace std;typedef long long LL;const int N 2000010;int n,x;struct st{int m;int sum;
}a[N];int ssum(int n){int s0;while(n0){sn%10;n/10;}return s;
}bool cmp(st a,st b){if(a.sumb.sum) return a.mb.m;return a.sumb.sum;
}int main(){cinnx;for(int i1;in;i){a[i].mi;int ta[i].m;a[i].sumssum(t);} sort(a1,an1,cmp);couta[x].m;return 0; } bool #includeiostream
#includealgorithm
#includecstringusing namespace std;typedef long long LL;const int N 2000010;int n;
int m;
int a[N];int sum(int a){int s0;while(a0){sa%10;a/10;}return s;}bool cmp(int a,int b){if(sum(a)sum(b)) return true;else if(sum(a)sum(b)) return false;else if(sum(a)sum(b)) {if(ab) return true;else return false;}
}int main(){cinnm;int idx0;for(int i0;in;i){a[idx]i1;}sort(a,an,cmp);couta[m-1];return 0; }