#19244: c++ AC(stringstream解)


089487 (089487)

學校 : 國立臺灣師範大學附屬高級中學
編號 : 82069
來源 : [140.112.150.137]
最後登入時間 :
2024-10-03 16:28:37
b981. YoJudge 預練(時間之章) -- b961YoJudge | From: [223.137.129.110] | 發表日期 : 2019-09-19 19:57

#include<iostream>
#include<sstream>
using namespace std;
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
string s;
while(cin>>s)
{
bool f=false;
for(int i=0;i<s.length();i++)
{
if(s[i]=='.'||s[i]==' ') continue;
if(!f)
{
if(s[i]<'0'||s[i]>'9') s.insert(s.begin()+i,' '),i++,f=1;


}
else
{
if(s[i]>='0'&&s[i]<='9') s.insert(s.begin()+i,' '),i++,f=0;
}
//cout<<f<<endl;

}
stringstream ss(s);
int time=0;s.clear();
double d;
while(ss>>d>>s)
{
if(s=="hour"||s=="h") time+=(d*60*60*1000);
else if(s=="m"||s=="min") time+=(d*60*1000);
else if(s=="s"||s=="s") time+=(d*1000);
else time+=d;
}
cout<<time<<endl;
}
}

AC (3ms, 376KB)
 
#19246: Re:c++ AC(stringstream解)


ufve0704 (爬 我爬 我爬爬爬 有排行榜這種東西就是要爬 爬過我上面的那...)

學校 : 臺北市私立延平高級中學
編號 : 83268
來源 : [203.72.178.1]
最後登入時間 :
2023-10-30 13:02:50
b981. YoJudge 預練(時間之章) -- b961YoJudge | From: [114.42.216.104] | 發表日期 : 2019-09-19 20:07

#include
#include
using namespace std;
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
string s;
while(cin>>s)
{
bool f=false;
for(int i=0;i<s.length();i++)
{
if(s[i]=='.'||s[i]==' ') continue;
if(!f)
{
if(s[i]<'0'||s[i]>'9') s.insert(s.begin()+i,' '),i++,f=1;


}
else
{
if(s[i]>='0'&&s[i]<='9') s.insert(s.begin()+i,' '),i++,f=0;
}
//cout<<f<<endl;

}
stringstream ss(s);
int time=0;s.clear();
double d;
while(ss>>d>>s)
{
if(s=="hour"||s=="h") time+=(d*60*60*1000);
else if(s=="m"||s=="min") time+=(d*60*1000);
else if(s=="s"||s=="s") time+=(d*1000);
else time+=d;
}
cout<<time<<endl;
}
}

AC (3ms, 376KB)
#include<bits/stdc++.h>
using namespace std;
int main(){
string a;
while(getline(cin,a)&&a[0]!=EOF){
double b=0,e=0;
for(int c=0;c<a.size();c++){
if(a[c]>='0'&&a[c]<='9')
b=b*10-48+a[c];
else{
if(a[c]=='h')
e+=b*3600000,b=0;
else if(a[c]=='m'){
if(a[c+1]=='s')
e+=b;
else
e+=b*60000,b=0;
}
else if(a[c]=='s'&&a[c-1]!='m')
e+=b*1000;
else if(a[c]=='.'){
e+=b*1000+(a[c+1]-48)*100;
break;
}
}
}
cout<<(long long)(int)e<<endl;
}
}

(3ms,332kb)

如果要問我這是甚麼解法

我就叫它解析字串法XD

還有

別再傳出你的解題速度和記憶體了

想要的話我隨便都能贏你

 
#19785: Re:c++ AC(stringstream解)


happyman940815@gmail.com (【百鬼組】希格瑪 - 一位排球廢物高中生)

學校 : 臺北市私立延平高級中學
編號 : 69013
來源 : [115.43.155.126]
最後登入時間 :
2023-08-11 16:12:40
b981. YoJudge 預練(時間之章) -- b961YoJudge | From: [219.71.219.174] | 發表日期 : 2019-10-30 20:25

我也是解析字串法www

不過別欺負別人拉XD,他會QQ

 
 
#19786: Re:c++ AC(stringstream解)


ufve0704 (爬 我爬 我爬爬爬 有排行榜這種東西就是要爬 爬過我上面的那...)

學校 : 臺北市私立延平高級中學
編號 : 83268
來源 : [203.72.178.1]
最後登入時間 :
2023-10-30 13:02:50
b981. YoJudge 預練(時間之章) -- b961YoJudge | From: [114.42.211.145] | 發表日期 : 2019-10-30 20:47

我也是解析字串法www

不過別欺負別人拉XD,他會QQ

 


我才要QQ

stringstream一直不會

所以一直都是用著解析字串下去的...XD

 
#19787: Re:c++ AC(stringstream解)


happyman940815@gmail.com (【百鬼組】希格瑪 - 一位排球廢物高中生)

學校 : 臺北市私立延平高級中學
編號 : 69013
來源 : [115.43.155.126]
最後登入時間 :
2023-08-11 16:12:40
b981. YoJudge 預練(時間之章) -- b961YoJudge | From: [219.71.219.174] | 發表日期 : 2019-10-30 21:00

我也是解析字串法www

不過別欺負別人拉XD,他會QQ

 


我才要QQ

stringstream一直不會

所以一直都是用著解析字串下去的...XD

好喔2333

世界之聲:您已獲得"解析者"

(诶,你有看轉生史萊姆嗎XD)

 
#19796: Re:c++ AC(stringstream解)


314159265358979323846264338327 ... (少年π)

學校 : 臺北市私立延平高級中學
編號 : 69058
來源 : [223.137.149.175]
最後登入時間 :
2024-11-18 16:24:11
b981. YoJudge 預練(時間之章) -- b961YoJudge | From: [203.72.178.252] | 發表日期 : 2019-10-31 12:02

我也是解析字串法www

不過別欺負別人拉XD,他會QQ

 


我才要QQ

stringstream一直不會

所以一直都是用著解析字串下去的...XD

好喔2333

世界之聲:您已獲得"解析者"

(诶,你有看轉生史萊姆嗎XD)

XDDD,轉生史萊姆超好看


 
#19798: Re:c++ AC(stringstream解)


ufve0704 (爬 我爬 我爬爬爬 有排行榜這種東西就是要爬 爬過我上面的那...)

學校 : 臺北市私立延平高級中學
編號 : 83268
來源 : [203.72.178.1]
最後登入時間 :
2023-10-30 13:02:50
b981. YoJudge 預練(時間之章) -- b961YoJudge | From: [114.42.212.77] | 發表日期 : 2019-10-31 19:36

我也是解析字串法www

不過別欺負別人拉XD,他會QQ

 


我才要QQ

stringstream一直不會

所以一直都是用著解析字串下去的...XD

好喔2333

世界之聲:您已獲得"解析者"

(诶,你有看轉生史萊姆嗎XD)

XDDD,轉生史萊姆超好看


看史萊姆?

我只知道不會的題目問大賢者XDD

 
ZeroJudge Forum