|
|
/////*
|
|
|
//// * algorithm04.cpp
|
|
|
//// *
|
|
|
//// * Created on: May 25, 2024
|
|
|
//// * Author: 28032
|
|
|
//// */
|
|
|
////
|
|
|
////#include <iostream>
|
|
|
////#include <algorithm>
|
|
|
////#include<string.h>
|
|
|
////
|
|
|
////using namespace std;
|
|
|
////
|
|
|
////int *vw;
|
|
|
////double **mem;
|
|
|
////int cnt = 0;
|
|
|
////double dfs(int x,int spV)
|
|
|
////{
|
|
|
//// if(x>=cnt) return 0;
|
|
|
//// double sum = 0;
|
|
|
//// if(mem[x][spV]) sum = mem[x][spV];
|
|
|
////
|
|
|
//// if(spV < vw[x])
|
|
|
//// sum = dfs(x+1,spV);
|
|
|
//// else
|
|
|
//// sum = max(dfs(x+1,spV),dfs(x+1,spV-vw[x])+vw[x]);
|
|
|
////
|
|
|
//// mem[x][spV] = sum;
|
|
|
//// return sum;
|
|
|
////}
|
|
|
////int main()
|
|
|
////{
|
|
|
//// double Q;
|
|
|
//// int N;
|
|
|
//// while(1)
|
|
|
//// {
|
|
|
//// cin>>Q>>N;
|
|
|
//// if(!N) break;
|
|
|
//// cnt = 0;
|
|
|
//// vw = new int[N];
|
|
|
//// for(int i = 0;i < N;i++)
|
|
|
//// {
|
|
|
//// if(false)
|
|
|
//// {
|
|
|
//// step1:
|
|
|
//// i++;
|
|
|
//// if(i >=N)
|
|
|
//// break;
|
|
|
//// }
|
|
|
//// int nn; //发票物品数
|
|
|
//// double sum = 0; //发票总金额
|
|
|
//// cin>>nn;
|
|
|
////
|
|
|
//// for(int j = 0;j < nn;j++)
|
|
|
//// {
|
|
|
//// char t,tt;
|
|
|
//// double money;
|
|
|
//// cin>>t>>tt>>money;
|
|
|
//// if(money > 600) goto step1;
|
|
|
//// switch(t)
|
|
|
//// {
|
|
|
//// case 'A':
|
|
|
//// case 'B':
|
|
|
//// case 'C':
|
|
|
//// sum+=money;
|
|
|
//// break;
|
|
|
//// default:
|
|
|
//// goto step1;
|
|
|
//// }
|
|
|
//// }
|
|
|
//// if(sum >1000) goto step1;
|
|
|
//// vw[cnt++] = sum*100;
|
|
|
//// }
|
|
|
//// int Qq= Q*100;
|
|
|
////
|
|
|
//// mem = new double*[cnt];
|
|
|
//// for(int i = 0;i < cnt;i++)
|
|
|
//// mem[i] = new double[Qq];
|
|
|
////
|
|
|
//// printf("%.2lf\n", dfs(0,Qq)/100.00);
|
|
|
////
|
|
|
//// for(int i = 0;i < cnt;i++)
|
|
|
//// delete mem[i];
|
|
|
//// delete[] mem;
|
|
|
//// }
|
|
|
////
|
|
|
////
|
|
|
////
|
|
|
//// return 0;
|
|
|
////}
|
|
|
////
|
|
|
////
|
|
|
//#include<bits/stdc++.h>
|
|
|
//using namespace std;
|
|
|
//struct price {
|
|
|
// price():p(0.0),key('\0'){}
|
|
|
// double p;
|
|
|
// char key;//<2F><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>
|
|
|
//};
|
|
|
//int main() {
|
|
|
// double q;
|
|
|
// int n;
|
|
|
// vector<price>v;
|
|
|
// while(1) {
|
|
|
// cin>>q>>n;
|
|
|
// if(n==0)break;
|
|
|
// int n1;
|
|
|
// v.clear();//<2F><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>whileѭ<65><D1AD><EFBFBD><EFBFBD>ߣ<EFBFBD>
|
|
|
// //<2F><><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>
|
|
|
//
|
|
|
// vector<double>dp;//dp[i]<5D><>ʾ<EFBFBD>Ե<EFBFBD>i<EFBFBD>ŷ<EFBFBD>Ʊ<EFBFBD><C6B1>Ϊ<EFBFBD><CEAA><EFBFBD>һ<EFBFBD>ſɱ<C5BF><C9B1><EFBFBD><EFBFBD><EFBFBD>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
//
|
|
|
// while(n--) {//<2F><>Ʊ<EFBFBD><C6B1><EFBFBD><EFBFBD>
|
|
|
// cin>>n1;
|
|
|
// double s1;
|
|
|
// price temp;
|
|
|
// int flag=0;
|
|
|
// while(n1--) {//ÿ<>ŷ<EFBFBD>Ʊ<EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>
|
|
|
// char a,b;
|
|
|
// cin>>a>>b>>s1;
|
|
|
// if((a!='A'&&a!='B'&&a!='C')||s1>600)flag=1;
|
|
|
// temp.p+=s1;
|
|
|
// temp.key=a;
|
|
|
// }
|
|
|
// if(temp.p>1000) flag=1;
|
|
|
// if(flag==0) { //˵<><CBB5><EFBFBD>÷<EFBFBD>Ʊ<EFBFBD><C6B1>û<EFBFBD>в<EFBFBD><D0B2>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
// v.push_back(temp);
|
|
|
// dp.push_back(temp.p);
|
|
|
// }
|
|
|
// }
|
|
|
// double sum=0;//Ҫ<>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD><EFBFBD>
|
|
|
// for(int i=0; i<dp.size(); i++) {
|
|
|
// for(int j=0; j<i; j++) {
|
|
|
//
|
|
|
// if(dp[j]+v[i].p<=q)//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
// dp[i]=max(dp[i],dp[j]+v[i].p);//״̬ת<CCAC>Ʒ<EFBFBD><C6B7><EFBFBD>
|
|
|
//
|
|
|
// }
|
|
|
// }
|
|
|
// for(int i=0; i<dp.size(); i++)
|
|
|
// if(dp[i]>sum)sum=dp[i];
|
|
|
// cout<<fixed<<setprecision(2)<<sum<<endl;
|
|
|
// }
|
|
|
// return 0;
|
|
|
//}
|