öλÔÓéÀֵǼÈë¿ÚÏÂÔØ

±±¾©Àí¹¤´óѧ¼ÆËã»ú½ü¼¸Äê»úÊÔÕæÌâ¼°Ìâ½â ÉÏ

±¾Õ¾Ð¡±à FreeöλÔÓéÀÖ¹Ù·½appÏÂÔØÍø/2019-05-28


2010Äê»úÊÔÕæÌâ
1£®ÊäÈëÒ»´®ÕûÊý£¬ÊäÈëÃüÁîÅÅÐò£¡
ÊäÈë a t ÔÚÕâ´®ÕûÊýºóÃæÌí¼ÓÕûÊý t£¬
ÊäÈë c\m\n ÓÐ n Ìæ»» m£¬
ÊäÈë d t ɾ³ý t£¬
ÊäÈë s ÅÅÐò¡£
#include<iostream>
#include<string>
#include<vector>
#include<algorithm>
using namespace std;
int main(){
vector<int> data;
vector<int>::iterator i;
string t;
cout<<"ÇëÊäÈëÒ»´®ÕûÊý£¬ÒÔ#½áβ£º";
cin>>t;
while(t!="#"){
int r=0,j=0;
while(t[j]!='\0'){
r=r*10+t[j]-'0';
j++;
}
data.push_back(r);
cin>>t;
}
// ²Ù×÷
cout<<"ÇëÊäÈ룺"<<endl;
while(cin>>t){
// Ìí¼ÓµÄÇé¿ö
if(t[0]=='a'){
int num;
cin>>num;
// ÔÚĩβÌí¼ÓÊý×Ö
data.push_back(num);
}
// Ð޸ĵÄÇé¿ö
else if(t[0]=='c'){
int j=2,num1=0,num2=0;
// ÌáÈ¡Êý×Ö
while(t[j]!='\\'){
num1=num1*10+t[j++]-'0';
}
j++;
while(t[j]!='\0'){
num2=num2*10+t[j++]-'0';
}
// Ìæ»»
for(i=data.begin();i!=data.end();i++)
if(*i==num1){
data.erase(i);
data.insert(i,num2);
}
}
// ɾ³ýµÄÇé¿ö
else if(t[0]=='d'){
int num;
cin>>num;
for(i=data.begin();i!=data.end();i++)
if(*i==num)
data.erase(i);
}
// ÅÅÐòµÄÇé¿ö
else if(t[0]=='s'){
sort(data.begin(),data.end());
}
else{
cout<<"ÊäÈë²»ºÏ·¨£¡"<<endl;
}

// Êä³ö
for(i=data.begin();i!=data.end();i++)
cout<<*i<<" ";

cout<<"ÇëÊäÈ룺"<<endl;
}

return 0;
}
2. ÊäÈë±í´ïʽ£¬Êä³öÖµ¡£
¼´ÖÐ׺±í´ïʽÇóÖµ£ºÏȽ«ÖÐ׺±í´ïʽת»¯Îªºó׺±í´ïʽ£¬È»ºóÔÙÇóÖµ¡£
#include<iostream>
#include<string>
#include<stack>
#include<queue>
using namespace std;

/**
* ÊäÈëÖÐ׺±í´ïʽ£¬×ª»¯Îª¼ÆËã»ú¿ÉÒÔ¼ÆËãµÄºó׺±í´ïʽ£¬¼´Ä沨À¼±í´ïʽ¡£
* ¶¨ÒåÔËËã·ûµÄÓÅÏȼ¶´ÎÐòÒÀ´ÎÊÇ+-*/()£¬È¨ÖµÔ½´ó£¬ÓÅÏȼ¶Ô½¸ß
* ÔÚÕ»¶¥Ê±µÄÓÅÏȼ¶±ð
* int op_pri_s[6]={1,1,2,2,0,0};
* ÔÚ×Ö·û´®ÖеÄÓÅÏȼ¶±ð
* int op_pri_q[6]={1,1,2,2,3,0};
*/
/**
* ()ÊäÈëÊÇÓ¢ÎĵķûºÅ£¬¼ÇµÃµ÷ºÃÊäÈë·¨£¬ÎÒÒòΪÕâ¸öµ÷Á˰ë¸öСʱbug
*/
// Åж¨Õ»¶¥ÓÅÏȼ¶È¨ÖµµÄº¯Êý
int psta(string opt){
char op[6]={'+','-','*','/','(',')'};
int op_pri_s[6]={1,1,2,2,0,0};
for(int i=0;i<6;i++)
if(opt[0]==op[i])
return op_pri_s[i];
}
// Åж¨×Ö·û´®ÖÐÓÅÏȼ¶È¨ÖµµÄº¯Êý
int pstr(char opt){
char op[6]={'+','-','*','/','(',')'};
int op_pri_q[6]={1,1,2,2,3,0};
for(int i=0;i<6;i++)
if(opt==op[i])
return op_pri_q[i];
}
int main(){
stack<string> s;
queue<string> q;
string data;
cin>>data;
// תºó׺±í´ïʽ
int i=0;
while(data[i]!='\0'){
string t="";
// Èç¹ûÊÇÔËËã·ûʱ
if(data[i]=='+'||data[i]=='-'||data[i]=='*'||data[i]=='/'||data[i]=='('||data[i]==')'){
// Õ»¿Õ£¬Ö±½Óѹջ
if(s.empty()){
t+=data[i++];
s.push(t);
t="";
}
// Õ»¶¥ÔËËã·ûÓÅÏȼ¶½Ï¸ß
else if(psta(s.top())>=pstr(data[i])){
// ***¿ÉÄܶà´Îµ¯Õ»£¬Ö±µ½×Ö·û´®µÄÔËËã·û£¬ÓÅÏȼ¶½Ï¸ß
while(psta(s.top())>=pstr(data[i])){
if((data[i]==')'&&s.top()=="("))
break;
q.push(s.top());
s.pop();
// ·ÀÖ¹Õ»¿Õ£¬Ôì³É¿ÕÖ¸ÕëÒì³£
if(s.empty())
break;
}
// À¨ºÅÆ¥ÅäµÄÇé¿ö£¬!s.empty()·ÀÖ¹Õ»¿Õ£¬Ôì³É¿ÕÖ¸ÕëÒì³£
if(!s.empty()&&data[i]==')'&&s.top()=="("){
i++;
s.pop();
}
else{
t+=data[i++];
s.push(t);
t="";
}
}
// ×Ö·û´®ÔËËã·ûÓÅÏȼ¶½Ï¸ß
else{
t+=data[i++];
s.push(t);
t="";
}

}
// Èç¹ûÊÇÊý×Ö
else
{
// ÌáÈ¡Êý×Ö
while(data[i]!='+'&&data[i]!='-'&&data[i]!='*'&&data[i]!='/'&&data[i]!='('&&data[i]!=')'&&data[i]!='\0'){
t+=data[i++];
}
// Ö±½ÓÈë¶Ó
q.push(t);
t="";
}
}
// °ÑÕ»µ¯¿Õ
while(!s.empty()){
q.push(s.top());
s.pop();
}

// ²âÊÔÊä³öºó׺±í´ïʽ
/*while(!q.empty()){
cout<<q.front();
q.pop();
}
cout<<endl;*/

// ¼ÆË㣬»¹µÃÓõ½Õ»¡£Óöµ½Êý×Öѹջ£¬Óöµ½ÔËËã·ûµ¯³öÕ»¶¥Á½¸öÊý×Ö£¬½øÐмÆËã¡£
double a=0,b=0;
stack<double> st;
while(!q.empty()){
string d=q.front();
q.pop();
if(d=="+"){
b=st.top();
st.pop();
a=st.top();
st.pop();
st.push(a+b);
}
else if(d=="-"){
b=st.top();
st.pop();
a=st.top();
st.pop();
st.push(a-b);
}
else if(d=="*"){
b=st.top();
st.pop();
a=st.top();
st.pop();
st.push(a*b);
}
else if(d=="/"){
b=st.top();
st.pop();
a=st.top();
st.pop();
st.push(a/b);
}
else{
double temp=0;
int k=0,
flag=0; // СÊý²¿·ÖµÄ±êÖ¾
// ÌáÈ¡Êý×Ö
while(d[k]!='\0'){
if(d[k]=='.'){
k++;
flag=10;
continue;
}
if(flag){
temp=temp+(d[k++]-'0')/(flag/1.0);
flag*=10;
}
else{
temp=temp*10+d[k++]-'0';
}
}
st.push(temp);
}
}

cout<<st.top()<<endl;

return 0;
}
2011Äê»úÊÔÕæÌâ

1. ÊäÈëÒ»×éµ¥´Ê£¨Çø·Ö´óСд£©£¬Í³¼ÆÊ××ÖĸÏàͬµÄµ¥´Ê¸öÊý£¬ÏàͬµÄµ¥´Ê²»ÀÛ¼Ó£¬Êä³ö¸ñʽ£º“×Öĸ£¬¸öÊý”#include <iostream>
#include <map>
#include <set>
using namespace std;

int main()
{
set<string> s;
map<char,int> m;
string str;
while(cin>>str)
{
s.insert(str);
}

set<string>::iterator it;
for(it=s.begin(); it!=s.end(); it++)
{
++m[(*it)[0]];
}

map<char,int>::iterator mit;

for(mit=m.begin(); mit!=m.end(); mit++)
{
cout<<mit->first<<" "<<mit->second<<endl;
}

return 0;
}
2. ÊäÈëÒ»×éµ¥´Ê£¨Çø·Ö´óСд£©£¬Êä³öÆä×ÖµäÅÅÐò
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;

int main()
{
int n=0;
string a[105],s;
while(cin>>s)
{
if(s=="0")
break;
else
a[n++]=s;
}
sort(a,a+n);
for(int i=0;i<n;i++)
cout<<a[i]<<endl;
return 0;
} 3£®¸øÒ»¸ö×Ö·û´®£¨aaaa£¨bbbb£¨cccc£¬dddd£©£¬eeee£¨ffff£©£©£©¸Ã×Ö·û´®±íÃ÷µÄÊǸ÷¸öÈ˵IJã´Î¹ØÏµ¡£±ÈÈçaaaaÊÇbbbbºÍeeeeµÄÁìµ¼£¬bbbbÊÇccccºÍddddµÄÁìµ¼¡£ÏÈÊäÈëÒ»¸öÃû³Æ£¬±ÈÈçffff£¬ÒªÇóÊä³öÆäÁìµ¼¹ØÏµ£¬Êä³öaaaa>eeee>ffff¡£#include <iostream>
#include <string>
using namespace std;
int main()
{
//(aaaa(bbbb(cccc,dddd),eeee(ffff)))
int n=0;
string s,str[105],t;//strΪ×Ö·û´®Õ»
cin>>s>>t;
for(int i=0; i<s.length(); i++)
{
if(s[i]=='(')
{
str[n++]=s[i];
}
else if(s[i]==',')//Óöµ½¶ººÅʱ½«¶ººÅºÍǰһ¸ö×óÀ¨ºÅÖ®¼äµÄÄÚÈÝɾ³ý
{
for(int k=n-1; k>=0; k--)
{
if(str[k]!="(")
n--;
else if(str[k]=="(")
{
break;
}
}
}
else if(s[i]==')')//Óöµ½ÓÒÀ¨ºÅ½«ÓÒÀ¨ºÅºÍǰһ¸ö×óÀ¨ºÅÖ®¼äµÄÄÚÈݺÍ×óÀ¨ºÅɾ³ý
{
for(int k=n-1; k>=0; k--)
{
if(str[k]!="(")
n--;
else if(str[k]=="(")
{
n--;
break;
}
}
}
else//×Öĸ»òÊý×Ö
{
int j;
string tt="";
for(j=i; j<s.length(); j++)
{
if((s[j]>='a'&&s[j]<='z')||(s[j]>='A'&&s[j]<='Z'))
tt+=s[j];
else
{
str[n++]=tt;
break;
}
}
if(tt==t)//ÕÒµ½Ä¿±ê×Ö·û´®ÔòÍ˳öÑ­»·
break;
i=j-1;
}
}

for(int i=0; i<n; i++)
{
if(str[i]!="(")
{
if(str[i]!=t)
cout<<str[i]<<">";
else
cout<<str[i];
}
}
cout<<endl;

return 0;
}


Ïà¹Ø»°Ìâ/Êý×Ö ¼ÆËã ÕæÌâ Ó¢ÎÄ Í³¼Æ

öλÔÓéÀÖ(xinhui)¹Ù·½ÍøÕ¾_öλÔÓéÀÖappÏÂÔØÈë¿Ú