Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 0497309

Browse files
Add files via upload
1 parent 67ccf67 commit 0497309

File tree

2 files changed

+91
-0
lines changed

2 files changed

+91
-0
lines changed

‎greedy/job_sequencing.normal.cpp‎

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
/*
2+
written by pankaj kumar.
3+
*/
4+
#include<iostream>
5+
#include<vector>
6+
#include<cmath>
7+
#include<set>
8+
#include<algorithm>
9+
#include<string.h>
10+
#define pan cin.tie(0);cout.tie(0);ios_base::sync_with_stdio(0);
11+
#define mod 1000000007;
12+
using namespace std;
13+
typedef long long ll ;
14+
#define line cout<<endl;
15+
/* ascii value
16+
A=65,Z=90,a=97,z=122
17+
*/
18+
19+
bool com(const pair<char,pair<int,int>>&v1,const pair<char,pair<int,int>>&v2)
20+
{
21+
return (v1.second.second>v2.second.second);
22+
}
23+
24+
int main()
25+
{
26+
pan;
27+
vector<pair<char,pair<int,int>>>vec;
28+
vec.push_back(make_pair('a',make_pair(2,100)));
29+
vec.push_back(make_pair('b',make_pair(1,19)));
30+
vec.push_back(make_pair('c',make_pair(2,27)));
31+
vec.push_back(make_pair('d',make_pair(1,25)));
32+
vec.push_back(make_pair('e',make_pair(3,15)));
33+
sort(vec.begin(),vec.end(),com);
34+
int size=vec.size();
35+
bool flag[size]={false};
36+
vector<int>pak;
37+
for(int i=0;i<size;i++)
38+
{
39+
for(int j=min(size,vec[i].second.first)-1;j>=0;j--)
40+
{
41+
if(flag[j]==false)
42+
{
43+
flag[j]=true;
44+
pak.push_back(i);
45+
break;
46+
}
47+
}
48+
}
49+
50+
for(int i=0;i<size;i++)
51+
{
52+
if(flag[i])
53+
cout<<vec[pak[i]].first<<" ";
54+
}
55+
line;
56+
}

‎greedy/police_thief.cpp‎

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
#include<iostream>
2+
#include<vector>
3+
using namespace std;
4+
5+
int main()
6+
{
7+
char arr1[]={'P','T','T','P','T'};
8+
int n=sizeof(arr1)/sizeof(arr1[0]);
9+
int k=2;
10+
// police catch thieve
11+
vector<int>p;
12+
vector<int>t;
13+
for(int i=0;i<n;i++)
14+
{
15+
if(arr1[i]=='P')
16+
p.push_back(i);
17+
else
18+
t.push_back(i);
19+
}
20+
int i=0,j=0,count=0;
21+
while(i<p.size() && j<t.size())
22+
{
23+
if(abs(p[i]-t[j])<=k)
24+
{
25+
count++;
26+
i++;
27+
j++;
28+
}
29+
else if(p[i]>t[j])
30+
j++;
31+
else
32+
i++;
33+
}
34+
cout<<count<<endl;
35+
}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /