mirror of
https://github.com/Estom/notes.git
synced 2026-04-01 18:11:42 +08:00
Merge branch 'master' of gitee.com:Eyestorm/notes
This commit is contained in:
16
code_segment/b.cpp
Normal file
16
code_segment/b.cpp
Normal file
@@ -0,0 +1,16 @@
|
||||
#include<iostream>
|
||||
#include<vector>
|
||||
#include<algorithm>
|
||||
using namespace std;
|
||||
|
||||
|
||||
int main(){
|
||||
|
||||
vector<int> vec{1,2,3};
|
||||
for_each(vec.begin(),vec.end(), [&](int &a){
|
||||
a++;
|
||||
});
|
||||
for(auto a:vec){
|
||||
cout<<a<<endl;
|
||||
}
|
||||
}
|
||||
21
code_segment/xiaoyu3.cpp
Normal file
21
code_segment/xiaoyu3.cpp
Normal file
@@ -0,0 +1,21 @@
|
||||
#include<iostream>
|
||||
#include<vector>
|
||||
|
||||
using namespace std;
|
||||
|
||||
int change(int amount, vector<int>& coins) {
|
||||
vector<int> dp(amount + 1);
|
||||
dp[0] = 1;
|
||||
for (int& coin : coins) {
|
||||
for (int i = coin; i <= amount; i++) {
|
||||
dp[i] += dp[i - coin];
|
||||
}
|
||||
}
|
||||
return dp[amount];
|
||||
}
|
||||
int main(){
|
||||
|
||||
vector<int> vec{1,5,10,20,50,100};
|
||||
cout<<change(100,vec)<<endl;
|
||||
|
||||
}
|
||||
52
code_segment/xiaoyu4.cpp
Normal file
52
code_segment/xiaoyu4.cpp
Normal file
@@ -0,0 +1,52 @@
|
||||
#include<iostream>
|
||||
#include<vector>
|
||||
#include<algorithm>
|
||||
#include<sstream>
|
||||
#include<map>
|
||||
using namespace std;
|
||||
|
||||
int main(){
|
||||
string s = "2\n7\n4 -4 -2 -1 -1 -1 -1\n5\n1 2 3 4 5\n";
|
||||
istringstream cin(s);
|
||||
// cin=is;
|
||||
int t=0;
|
||||
cin>>t;
|
||||
while(t--){
|
||||
int n;
|
||||
cin>>n;
|
||||
vector<int> vec;
|
||||
while(n--){
|
||||
int x;
|
||||
cin>>x;
|
||||
vec.push_back(x);
|
||||
}
|
||||
// sort(vec.begin(),vec.end());
|
||||
vector<int> sum_vec(vec.size(),0);
|
||||
vector<int> num_vec(vec.size(),0);
|
||||
multimap<int,int> m;
|
||||
|
||||
int sum=0,num=0;
|
||||
for(int i=0;i<vec.size();i++){
|
||||
if(vec[i]>=0){
|
||||
sum+=vec[i];
|
||||
num++;
|
||||
}
|
||||
else{
|
||||
m.insert(pair<int,int>(vec[i],i));
|
||||
}
|
||||
sum_vec[i]=sum;
|
||||
num_vec[i]=num;
|
||||
}
|
||||
for(auto a=m.rbegin();a!=m.rend();a++){
|
||||
if(sum_vec[a->second]+a->first>0){
|
||||
for(int i=a->second;i<vec.size();i++){
|
||||
sum_vec[i]+=a->first;
|
||||
num_vec[i]++;
|
||||
}
|
||||
}
|
||||
cout<<sum_vec[vec.size()-1]<<" ";
|
||||
}
|
||||
cout<<endl;
|
||||
cout<<num_vec[vec.size()-1]<<endl;
|
||||
}
|
||||
}
|
||||
38
code_segment/xiaoyu5.cpp
Normal file
38
code_segment/xiaoyu5.cpp
Normal file
@@ -0,0 +1,38 @@
|
||||
#include<iostream>
|
||||
#include<vector>
|
||||
#include<algorithm>
|
||||
// #include<sstream>
|
||||
using namespace std;
|
||||
|
||||
struct Node{
|
||||
int val;
|
||||
int pos;
|
||||
Node(int v,int p){
|
||||
val=v;
|
||||
pos=p;
|
||||
}
|
||||
bool operator<(const Node& b){
|
||||
return val<b.val;
|
||||
}
|
||||
};
|
||||
int main(){
|
||||
// string s = "4\n1 2\n2 3\n3 5\n4 3\n";
|
||||
// istringstream cin(s);
|
||||
int N;
|
||||
cin>>N;
|
||||
vector<Node> vec;
|
||||
while(N--){
|
||||
int x,y;
|
||||
cin>>x>>y;
|
||||
vec.push_back(Node(x,1));
|
||||
vec.push_back(Node(x+y+1,-1));
|
||||
}
|
||||
sort(vec.begin(),vec.end());
|
||||
int max_num=0;
|
||||
int num=0;
|
||||
for(auto v:vec){
|
||||
num+=v.pos;
|
||||
max_num=max(num,max_num);
|
||||
}
|
||||
cout<<max_num<<endl;
|
||||
}
|
||||
22
code_segment/xiaoyu5_2.cpp
Normal file
22
code_segment/xiaoyu5_2.cpp
Normal file
@@ -0,0 +1,22 @@
|
||||
#include<iostream>
|
||||
#include<map>
|
||||
using namespace std;
|
||||
|
||||
int main(){
|
||||
int N;
|
||||
cin>>N;
|
||||
map<int,int> m;
|
||||
while(N--){
|
||||
int x,y;
|
||||
cin>>x>>y;
|
||||
m.count(x)?m[x]++:m[x]=1;
|
||||
m.count(x+y+1)?m[x+y+1]--:m[x+y+1]=-1;
|
||||
}
|
||||
int max_num=0;
|
||||
int num=0;
|
||||
for(auto v:m){
|
||||
num+=v.second;
|
||||
max_num=max(num,max_num);
|
||||
}
|
||||
cout<<max_num<<endl;
|
||||
}
|
||||
Reference in New Issue
Block a user