2021-08-22 12:05
中南大学 Java 牛客296036308号:/*input
()()()(())
*/
#include <bits×dc++.h>
using namespace std;
typedef long long ll;
inline ll read() {
char c = getchar(); ll x = 0, f = 1;
while(c < '0' || c > '9') {if(c == '-') f = -1; c = getchar();}
while(c >= '0' && c <= '9') x = x * 10 + c - '0', c = getchar();
return x * f;
}
const int inf=0x3f3f3f3f;
const int maxn=1e5+50;
const ll mod=1e9+7;
int main(){
string s; cin>>s;
int len=s.length();
stack<int> sta;
for(int i=0;i<len;i++){
if(s[i]=='('){
sta.push(-1);
sta.push(1);
}
else{
ll cur=1;
while(sta.size()&&sta.top()!=-1){
cur=cur*sta.top()%mod;
sta.pop();
}
sta.pop();
sta.push(cur+1);
}
}
ll cur=1;
while(sta.size()&&sta.top()!=-1){
cur=cur*sta.top()%mod;
sta.pop();
}
cout<<cur<<endl;
return 0;
}
投递美团等公司10个岗位 >
0 点赞 评论 收藏
分享
投递阿里巴巴等公司10个岗位 >
0 点赞 评论 收藏
分享
投递字节跳动等公司10个岗位 >
0 点赞 评论 收藏
分享
快私我:public static int[] getRains(int[] rains){
if (rains==null||rains.length==0) {
return new int[0];
}
int len=rains.length;
int[] res=new int[len];
Arrays.fill(res,-1);
Set<Integer> day=new HashSet<>();
for (int i = 0; i < len; i++) {
if (rains[i] != 0) {
if (day.contains(rains[i])) {
return new int[0];
} else {
day.add(rains[i]);
}
} else {
for (int j = i+1; j < len; j++) {
if (day.contains(rains[j])) {
res[i] = rains[j];
day.remove(rains[j]);
break;
}
}
}
}
return res;
}
0 点赞 评论 收藏
分享
只要我足够卷就没人能卷我:goodgood,一个不会
投递字节跳动等公司10个岗位 >
0 点赞 评论 收藏
分享
投递CVTE等公司10个岗位 >
0 点赞 评论 收藏
分享
牛客社区助手004:楼主你好,请问你是实习、校招还是社招?
投递思杰等公司10个岗位 >
0 点赞 评论 收藏
分享
关注他的用户也关注了: