package main import . "fmt" import . "strings" func main() { var n,k int var s string Scan(&n,&k,&s) // Xでコーナーケースの話を見てしまった // 減点 if n%2==1 { Println("No") return } if Count(s,"(")!=Count(s,")") { Println("No") return } t:=make([]byte,0,n*5) d:=make([]int,n+1) x:=0 y:=0 for i,c:=range s { if c=='(' { x++ d[x]=0 if i>0&&s[i-1]==')'{ t=append(t,'+') d[x-1]++ } t=append(t,'(') } else { x-- if x<0 { Println("No") return } if s[i-1]=='(' { t=append(t,[]byte("1+1")...) } if s[i-1]==')'&&d[x+1]==0 { t=append(t,'+','1') } t=append(t,')') if x==0 { y++ } } } if x>0 { Println("No") return } //s=ReplaceAll(s,"()","(1+1)") //s=ReplaceAll(s,")(",")+(") //for Contains(s,"))") { //s=ReplaceAll(s,"))",")+1)") //} s=string(t) z:=Count(s,"1") if z>k { Println("No") return } if z==k&&y==1 { Println("No") return } s+=Repeat("+1",k-z) Println("Yes") Println(s) }