A:
#include<iostream>
#include<map>
#include<vector>
#include<string>
#include<stack>
using
namespace
std;
int
main() {
int
n;
cin >> n;
map<
char
,
int
> mp;
for
(
int
i = 0; i < n; i++) {
char
j;
cin >> j;
int
y = 0;
if
(j ==
'T'
) y = 1;
mp[i +
'A'
] = y;
}
string ss;
stack<
int
> st;
getchar
();
getline(cin, ss);
int
ans=-1;
for
(
int
i = 0; i < ss.length(); i++) {
if
(ss[i] ==
' '
)
continue
;
if
(ss[i] >=
'A'
&& ss[i] <=
'Z'
) {
st.push(mp[ss[i]]);
}
if
(ss[i] ==
'*'
) {
int
a, b;
a = st.top();
st.pop();
b = st.top();
st.pop();
st.push(a & b);
}
if
(ss[i] ==
'+'
) {
int
a, b;
a = st.top();
st.pop();
b = st.top();
st.pop();
st.push(a | b);
}
if
(ss[i] ==
'-'
) {
int
a, b;
a = st.top();
st.pop();
st.push(a ^ 1);
}
if
(!st.empty()) ans = st.top();
}
if
(ans)
cout <<
"T"
<< endl;
else
cout <<
"F"
<< endl;
return
0;
}
B:
#include <bits/stdc++.h>
#define ll long long
using
namespace
std;
inline
ll gcd(ll a,ll b) {
ll r;
while
(b>0) {
r=a%b;
a=b;
b=r;
}
return
a;
}
int
main(){
ll a, b;
cin >> a >> b;
ll g = gcd(a, b);
if
(((a/g))&0x01&&((b/g)&0x01)){
cout << g << endl;
}
else
{
cout << 0 << endl;;
}
system
(
"pause"
);
return
0;
}
C:
#include <iostream>
#include <cmath>
#include <algorithm>
#include <vector>
using
namespace
std;
int
main()
{
int
p,d;
int
i,j;
int
x,m,n;
int
a[100005],b[100005];
double
aa=0.0,bb=0.0;
double
e=0.0;
double
v=0.0;
cin>>p>>d;
for
(i=1;i<=p;i++)
{
cin>>x;
cin>>m>>n;
a[x]+=m;
b[x]+=n;
v=v+m+n;
}
for
(i=1;i<=d;i++)
{
if
(a[i]>b[i])
{
cout<<
"A"
<<
" "
;
int
sum=a[i]-(
floor
((a[i]+b[i])/2)+1);
cout<<sum<<
" "
;
cout<<b[i]<<endl;
aa+=sum;
bb+=b[i];
}
else
{
cout<<
"B"
<<
" "
;
int
sum=b[i]-(
floor
((a[i]+b[i])/2)+1);
cout<<a[i]<<
" "
;
cout<<sum<<endl;
aa+=a[i];
bb+=sum;
}
}
e=
abs
(aa-bb)/v;
printf
(
"%.10lf"
,e);
return
0;
}
D:
#include<iostream>
#include<vector>
using
namespace
std;
int
main() {
int
n;
cin>>n;
int
max1=0;
vector<
int
> v(201,0);
for
(
int
i=0;i<n;i++) {
int
x;
cin>>x;
v[x]++;
max1=max(max1,x);
}
int
f=1;
for
(
int
i=1;i<=max1;i++) {
if
(!v[i]) {
f=0;
cout<<i<<endl;
}
}
if
(f)
cout<<
"good job"
<<endl;
return
0;
}
G:
#include <iostream>
#include <cmath>
#include <cstring>
#include <algorithm>
#include <vector>
using
namespace
std;
bool
cmp(
double
x,
double
y)
{
return
x>y;
}
int
main()
{
int
i,j;
int
n;
double
p[105];
double
dp[105][105];
double
ans;
memset
(dp,0,
sizeof
(dp));
cin>>n;
for
(i=1;i<=n;i++)
{
cin>>p[i];
p[i]/=100;
}
sort(p+1,p+n+1,cmp);
// for (i=1;i<=n;i++)
// {
// cout<<p[i]<<endl;
// }
dp[0][0]=1;
for
(i=1;i<=n;i++)
for
(j=0;j<=i;j++)
{
if
(j==0)
{
dp[i][j]=dp[i-1][j]*(1-p[i]);
}
else
{
dp[i][j]=dp[i-1][j-1]*p[i]+dp[i-1][j]*(1-p[i]);
}
}
double
maxn=0.0;
for
(i=1;i<=n;i++)
{
ans=0.0;
for
(j=1;j<=i;j++)
{
double
t=(
double
)j/(
double
)i;
double
x1=
pow
(j,t);
// printf("%.9lf\n",x1);
// cout<<dp[n][j]<<endl;
ans+=x1*dp[i][j];
}
if
(ans-maxn>0.00000) maxn=ans;
}
printf
(
"%.9lf"
,maxn);
return
0;
}
J:
#include<bits/stdc++.h>
typedef
long
long
ll;
using
namespace
std;
int
main() {
int
n;
cin >> n;
vector<
double
> qz(n + 1, 0), hz(n, 0);
double
tt = 0;
for
(
int
i = 0; i <n; i++) {
double
x;
cin >> x;
qz[i + 1] = qz[i] + x;
tt += x;
}
qz[n] = tt;
int
ec = 1, sc = 1;
for
(
int
i = 0; i < n; i++) {
hz[i] = tt - qz[i ];
//cout << qz[i + 1] << " " << hz[i] << endl;
if
((
double
)((
double
)qz[i + 1] / (i + 1)*1.0) >= (
double
)(qz[ec + 1] / (ec + 1))*1.0)
ec = i;
if
((
double
)(hz[i] / (n - i)) > (
double
)(hz[sc] / (n - sc)))
sc = i;
}
//cout << ec << " " << sc << endl;
double
ans =(
double
)(qz[ec + 1] + hz[sc]) / (
double
)(ec + 1 + n - sc)*1.0;
if
(ec >= sc) {
ans = (
double
)(hz[sc] / (
double
)(n - sc)*1.0);
}
ans=max(ans,(
double
)(qz[ec+1]/(ec+1)));
ans=max(ans,(
double
)(hz[sc])/(n-sc));
if
(ans < 0) ans = 0;
//ans=double((double)2/(double)3*1.0);
printf
(
"%.9lf"
, ans);
return
0;
}
K:
#include <bits/stdc++.h>
#define ll long long
using
namespace
std;
int
main(){
int
ans = 0;
set<
char
> se;
string s;
set<
char
> visit;
cin >> s;
int
slen = s.length();
for
(
int
i = 0; i < slen; i++){
se.clear();
// if(visit.count(s[i]))
// se.clear();
se.insert(s[i]);
for
(
int
j = i+1; j < slen && se.size() <27; j++){
if
(s[j] == s[i])
break
;
if
(se.count(s[j]))
continue
;
ans++;
se.insert(s[j]);
}
}
cout << ans;
system
(
"pause"
);
return
0;
}